MLton is a compiler that optimizes Standard ML code with a focus on whole-program optimization.
The software supports the complete SML 97 language, purely based on The Definition of Standard ML (Revised). If you come across a program that MLton rejects, but the Definition accepts, or the other way round, it should be considered as a bug. You can also view a list of known bugs on UnresolvedBugs.
The implementation comprises all the modules required by the latest Basis Library specification, along with several optional modules. The software generates standalone executables that do not require supplementary code or libraries except the regular shared libraries. Additionally, MLton can create statically linked executables.
The software is potent enough to compile large programs, including itself, which involves over 140K lines of code. The distributed version of MLton is compiled by the software itself.
Moreover, it supports vast quantities of memory, up to 4G, array lengths up to 231 - 1, and enormous files, using 64-bit file positions.
The latest release of MLton includes several updates, such as the software now being released under the BSD license instead of the GPL. You can find improved documentation based on the MLton wiki, along with support for x86/MinGW and HPPA/Linux. Furthermore, the new release comprises of several improvements to the FFI, ML Basis annotations, and new libraries ckit and SML/NJ library.
Overall, MLton is an impressive software ideal for programmers who require a fully-featured Standard ML compiler capable of optimizing the entire program, supporting vast memory, and generating standalone executables.
Version 20051202: N/A