Alice ML Got Extended Support For Distributed, Concurrent, And Constraint Programming

If you have been waiting for Alice MI update to arrive in the market then you wait is over. Recently, the Alice MI has got released some updates in which support for concurrent, constraint and distributed programming has been added. I bet, most of you coders out there were looking for just the same kind of thing right? Overview Alice ML is basically a functional programming language that is based on Standard ML and now it is extended with rich support various features like distributed, concurrent, and constraint programming as well. There are several new features that have been introduced in the latest version of Alice ML and some of them are described below. • Futures: laziness and light-weight concurrency with implicit 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 import & export of modules • Distribution: type-safe cross-platform remote functions and network mobility • Constraints: solving combinatorical problems using constraint propagation and programmable search Building While using Ubuntu 13.10, following packages are required to make the changes.
$ sudo apt-get install smlnj smlnj-runtime ml-lex ml-lpt ml-yacc     
$ sudo apt-get install g++ libsqlite3-dev libgtk2.0-dev libgmp-dev \
     gawk libtool libc6-dev-i386 libgnomecanvas2-dev gtk2-engines-pixbuf \
     libxml2-dev autoconf texinfo
To build:
$ git clone git://github.com/doublec/aliceml
$ cd aliceml/make
$ make setup
#...add directory display to the PATH...
$ export PATH=/path/displayed/in/setup:$PATH
$ make all
The finalized system will be available in “distro” subdirectory and the instruction about how to install the new “path” are also printed at the end of “make all” copy. Interesting thing about this development is that, git repository was created by converting the Gareth Smith’s mercurial Repositories to simple git and then splicing them to make one repository. The source of gecode will be downloaded during the make setup process.

Tags

Add new comment