MLton is a whole-program optimizing compiler for the Standard ML programming language. MLton has the following features. + Portability. Runs on the following platforms. o ARM: Linux (Debian). o Alpha: Linux (Debian). o AMD64: Darwin (Mac OS X), FreeBSD, Linux (Debian, Fedora, ...), Solaris (10 and above). o HPPA: HPUX (11.11 and above), Linux (Debian). o IA64: HPUX (11.11 and above), Linux (Debian). o PowerPC: AIX (5.2 and above), Darwin (Mac OS X), Linux (Debian, Fedora). o PowerPC64: AIX (5.2 and above). o S390: Linux (Debian). o Sparc: Linux (Debian), Solaris (8 and above). o X86: Cygwin/Windows, Darwin (Mac OS X), FreeBSD, Linux (Debian, Fedora, ...), MinGW/Windows, NetBSD, OpenBSD, Solaris (10 and above). + Robustness. o Supports the full SML 97 language as given in The Definition of Standard ML (Revised). o A complete implementation of the Basis Library. o Generates standalone executables. o Compiles large programs. o Support for large amounts of memory (up to 4G on 32-bit systems; more on 64-bit systems). o Support for large array lengths (up to 2^31 - 1 on 32-bit systems; up to 2^63-1 on 64-bit systems). o Support for large files, using 64-bit file positions. + Performance. o Executables have excellent running times. o Generates small executables. o Untagged and unboxed native integers, reals, and words. o Unboxed native arrays. o Multiple garbage collection strategies. o Fast arbitrary-precision arithmetic based on the GnuMP. + Tools. o Source-level profiling for both time and allocation. o MLLex lexer generator. o MLYacc parser generator. o ML-NLFFIGEN foreign-function-interface generator. + Extensions. o A simple and fast C FFI that supports calling from SML to C and from C to SML. o The ML Basis system for programming in the very large. o Libraries for continuations, finalization, interval timers, random numbers, resource limits, resource usage, signal handlers, object size, system logging, threads, weak pointers, and world save and restore. For more information, go to the MLton home page. http://mlton.org/ There are two mailing lists available. * MLton@mlton.org MLton developers * MLton-user@mlton.org MLton user community doc directory contents: README this file changelog changelog cm2mlb/ a utility for producing ML Basis programs in SML/NJ cmcat/ a utility for producing whole programs in SML/NJ examples/ example SML programs guide/ HTML MLton guide (copy of the MLton wiki) license/ license information mllex.pdf user guide for mllex lexer generator mlton-guide.pdf PDF version of MLton guide mlyacc.pdf user guide for mlyacc parser generator