|
Alice is a functional programming language based on Standard ML, extended with rich support for concurrent, distributed, and constraint programming. Alice extends Standard ML with several new features:
- Futures: laziness and light-weight concurrency with data-flow synchronisation
- Higher-order modules: higher-order functors and abstract signatures
- Packages: integrating static with dynamic typing and first class modules
- Pickling: higher-order type-safe, generic & platform-independent persistence
- Components: platform-independence and type-safe dynamic loading of modules
- Distribution: type-safe cross-platform remote functions and network mobility
- Constraints: solving combinatorical problems using constraint propagation and programmable search
The Alice System is a rich open-source programming system featuring the following tools:
- Virtual machine: a portable VM with support for just-in-time compilation
- Interactive system: an interpreter-like interactive toplevel
- Batch compiler: separate compilation
- Static linker: type-safe bundling of components
- Inspector: a tool for interactively inspecting data structures
- Explorer: a tool for interactively investigating search problems
- Gtk+: a binding for the Gnome toolkit GUI library
- SQL: a library for accessing SQL databases
- XML: a simple library for parsing XML documents
|