Jump to content

MLton

From Wikipedia, the free encyclopedia
MLton
ParadigmMulti-paradigm: functional, imperative
FamilyML: Standard ML
First appeared1997; 27 years ago (1997)[1]
Stable release
20210117 / January 17, 2021; 3 years ago (2021-01-17)
Typing disciplinestrong, static, inferred
LicenseHistorical Permission Notice and Disclaimer[2]
Filename extensions.sml
Websitemlton.org
Influenced by
Standard ML

MLton is a whole-program optimizing compiler for the programming language Standard ML.[1] MLton development began in 1997,[1] and continues[3] with a worldwide community of developers and users, who have helped to port MLton to several computing platforms. It is free and open-source software released under a Historical Permission Notice and Disclaimer. MLton was a participating organization in the 2013 Google Summer of Code.

MLton aims to produce fast executables, and to encourage rapid prototyping and modular programming by eliminating inefficiencies often associated with high-level features.[1] It also aims to facilitate large-scale programming through the MLBasis system,[4] simplifying modularity and management of namespaces. As a whole-program compiler, it is notable for lacking an read–eval–print loop interactive top-level, common among Standard ML environments.[5]

MLton includes several libraries in addition to the Basis standard library including ML Language Processing Tools with an implementation of ANTLR, and MLRISC with code generators for reduced instruction set computers. It also implements features that aid in porting code from SML/NJ, one of the more popular SML implementations,[citation needed] including support for SML/NJ's compiling manager.

See also

[edit]

References

[edit]
  1. ^ a b c d Stephen Weeks (September 16, 2006). "Whole-Program Compilation in MLton" (PDF). ML Workshop 2006, invited lecture. Archived from the original (PDF) on June 29, 2007. Retrieved 2007-12-02.
  2. ^ "License". MLton.org. Retrieved 2021-11-30.
  3. ^ https://github.com/MLton/mlton
  4. ^ https://mlton.org/MLBasis
  5. ^ https://mlton.org/Drawbacks
[edit]