The SML programming language is a modern descendant of the ML programming language used in the LCF theorem-proving project. It is unique among widely used languages in that it has a formal specification, given as an operational semantics in The Definition of Standard ML (Revised), by Milner, Tofte, Harper and MacQueen (ISBN 0262631814).
Implementations
Some SML implementations include:
- MLton is a full-program compiler, meaning that it compiles the entire program at once. It does not support any form of separate compilation. ([1])
- Moscow ML is a light-weight implementation, based on the CAML Light runtime engine. It implements the full SML language, including SML Modules, and much of the SML Basis Library. ([2])
- Poly/ML is a full implementation of Standard ML. ([3])
- Standard ML of New Jersey (abbreviated SML/NJ) is a full compiler, with associated libraries, tools, and documentation. ([4])
- SML2c is a batch compiler and compiles only module-level declarations (i.e. signatures, structures and functors) into C. Based on SML/NJ version 0.67 and shares front end and most of its run-time system, but does not support SML/NJ style debugging and profiling. Module-level programs that run on SML/NJ can be compiled by sml2c without any changes.
All of the implementations above are open-source and freely available. There are no commercial SML implementations.
Find more facts
Further reference
Remember what SML programming language means:
Other sources
Search for
SML programming language information on:
amazon.com
Your reference for information, definition
http://explanation-guide.info/meaning/SML-programming-language.html
Licensing information:
This article uses material from
Wikipedia (
credits) and is made available under the terms of the
GNU FDL (
copy).
Image licensing information is accessible by clicking the image.