The current release of Poly/ML (5.6) is available as downloads from Github (https://github.com/polyml/polyml/releases) and SourceForge (http://sourceforge.net/projects/polyml). For Linux, Mac OS X, Cygwin, BSD and similar platforms download the source tar-ball and follow the instructions below. There are binary distributions for 32-bit and 64-bit Windows.
After downloading and unpacking the source change to the polyml directory and run.
./configure by default places
installed files within /usr/local and in particular the libraries are
placed in /usr/local/lib. Quite a few Unix variants e.g. Debian, Ubuntu
and Fedora, do not include /usr/local/lib in the library search path and
on those distributions it may be better to override this by specifying
Please note: although Poly/ML is released as source the source actually contains binary versions of the compiler. There are native code versions for i386 and x86-64. The configure script will select the appropriate version. On other architectures it will use interpreted byte code which will necessarily be slower than the native code versions.
The released version has been extensively tested before being released. If you are using Poly/ML for real work this is the version you should use. The development version is kept in a GIT repository at GitHub (https://github.com/polyml). Note that the GIT code may change frequently and things may break. Bug fixes, though, are applied first to this so you may wish to try this if you have problems. To download the GIT version do the following:
git clone https://github.com/polyml/polyml.git
At this stage you can simply build Poly/ML in the normal way but this may not incorporate all the changes. In particular the compiler is not rebuilt by the normal build process so to do a complete recompile do the following:
When updating an existing directory from GIT it may well be worth running make distclean before the update to remove any old files.
The GIT repository contains the main development line
but also bug fixes for released versions. These are branches such as fixes-5.6.