Results 1 -
2 of
2
10 The Essence of ML Type Inference 10.1 What Is ML?
"... The name ML appeared during the late seventies. It then referred to a generalpurpose programming language that was used as a meta-language (whence its name) within the theorem prover LCF (Gordon, Milner, and Wadsworth, 1979). Since then, several new programming languages, each of which offers severa ..."
Abstract
- Add to MetaCart
The name ML appeared during the late seventies. It then referred to a generalpurpose programming language that was used as a meta-language (whence its name) within the theorem prover LCF (Gordon, Milner, and Wadsworth, 1979). Since then, several new programming languages, each of which offers several different implementations, have drawn inspiration from it. So, what does ML stand for today? For a semanticist, ML might stand for a programming language featuring first-class functions, data structures built out of products and sums, mutable memory cells called references, exception handling, automatic memory management, and a call-by-value semantics. This view encompasses the Standard ML (Milner, Tofte, and Harper, 1990) and Caml (Leroy, 2000) families of programming languages. We refer to it as ML-the-programming-language. For a type theorist, ML might stand for a particular breed of type systems, based on the simply-typed λ-calculus, but extended with a simple form of polymorphism introduced by let declarations. These type systems have decidable