ML (programming language)

ML (Meta Language) is a general-purpose functional programming language. It is known for its use of the polymorphic Hindley–Milner type system, which automatically assigns the types of most expressions without requiring explicit type annotations, and ensures type safety – there is a formal proof that a well-typed ML program does not cause runtime type errors. ML provides pattern matching for function arguments, garbage collection, imperative programming, call-by-value and currying. It is used heavily in programming language research and is one of the few languages to be completely specified and verified using formal semantics. Its types and pattern matching make it well-suited and commonly used to operate on other formal languages, such as in compiler writing, automated theorem proving, an

Comment
enML (Meta Language) is a general-purpose functional programming language. It is known for its use of the polymorphic Hindley–Milner type system, which automatically assigns the types of most expressions without requiring explicit type annotations, and ensures type safety – there is a formal proof that a well-typed ML program does not cause runtime type errors. ML provides pattern matching for function arguments, garbage collection, imperative programming, call-by-value and currying. It is used heavily in programming language research and is one of the few languages to be completely specified and verified using formal semantics. Its types and pattern matching make it well-suited and commonly used to operate on other formal languages, such as in compiler writing, automated theorem proving, an
Date
18 February 2010
Designer
enRobin Milner and others at the University of Edinburgh
Designer
Robin Milner
University of Edinburgh
Dialects
F Sharp (programming language)
OCaml
Standard ML
Has abstract
enML (Meta Language) is a general-purpose functional programming language. It is known for its use of the polymorphic Hindley–Milner type system, which automatically assigns the types of most expressions without requiring explicit type annotations, and ensures type safety – there is a formal proof that a well-typed ML program does not cause runtime type errors. ML provides pattern matching for function arguments, garbage collection, imperative programming, call-by-value and currying. It is used heavily in programming language research and is one of the few languages to be completely specified and verified using formal semantics. Its types and pattern matching make it well-suited and commonly used to operate on other formal languages, such as in compiler writing, automated theorem proving, and formal verification.
Hypernym
Language
Influenced
C++
Influenced
C++
Influenced
Clojure
Influenced
Clojure
Influenced
Coq
Influenced
Coq
Influenced
Cyclone (programming language)
Influenced
Cyclone (programming language)
Influenced
Elm (programming language)
Influenced
Elm (programming language)
Influenced
Erlang (programming language)
Influenced
Erlang (programming language)
Influenced
F* (programming language)
Influenced
F* (programming language)
Influenced
F Sharp (programming language)
Influenced
F Sharp (programming language)
Influenced
Haskell (programming language)
Influenced
Haskell (programming language)
Influenced
Idris (programming language)
Influenced
Idris (programming language)
Influenced
Kotlin (programming language)
Influenced
Kotlin (programming language)
Influenced
Miranda (programming language)
Influenced
Miranda (programming language)
Influenced
Nemerle
Influenced
Nemerle
Influenced
OCaml
Influenced
OCaml
Influenced
Opa (programming language)
Influenced
Opa (programming language)
Influenced
Rust (programming language)
Influenced
Rust (programming language)
Influenced
Scala (programming language)
Influenced
Scala (programming language)
Influenced
Standard ML
Influenced
Standard ML
InfluencedBy
ISWIM
Influenced by
ISWIM
Is primary topic of
ML (programming language)
Label
enML (programming language)
Link from a Wikipage to an external page
www.cs.cmu.edu/~rwh/isml/book.pdf
cakeml.org
msdn.microsoft.com/en-us/fsharp/default.aspx
web.archive.org/web/20100218004857/http:/msdn.microsoft.com/en-us/fsharp/default.aspx
mlton.org
smlfamily.github.io/sml97-defn.pdf
smlnj.org
github.com/SMLFamily/Successor-ML
Link from a Wikipage to another Wikipage
.NET Framework
Algebraic data types
API
ATS (programming language)
Automated theorem proving
Bioinformatics
C++
Call-by-value
Call stack
Category:Academic programming languages
Category:Functional languages
Category:ML programming language family
Category:Pattern matching programming languages
Category:Procedural programming languages
Category:Programming languages created in 1973
Category:Statically typed programming languages
Clojure
Closure (computer science)
CoffeeScript
Compiler writing
Coq
Currying
Cyclone (programming language)
Data type
Dependent ML
Eager evaluation
ECMAScript
Elm (programming language)
Erlang (programming language)
Evaluation strategy
Exception handling
Expression (programming)
F* (programming language)
Factorial
First-class function
First-order logic
Formal semantics of programming languages
Formal verification
F Sharp (programming language)
Functional programming
Garbage collection (computer science)
General purpose programming language
Generic programming
Haskell (programming language)
Hindley–Milner type system
Idris (programming language)
Imperative programming
Infinite descending chain
Interface (Java)
ISWIM
Jeffrey D. Ullman
Kotlin (programming language)
Lambda calculus
Lawrence Paulson
Lazy evaluation
Lazy ML
Linear time
Lisp (programming language)
Logic for Computable Functions
Mads Tofte
Miranda (programming language)
Multi-paradigm programming language
Nemerle
OCaml
Opa (programming language)
PAL (programming language)
Parametric polymorphism
Pattern matching
Polymorphism (computer science)
Purely functional language
Quadratic time
Recursion (computer science)
Robert Harper (computer scientist)
Robin Milner
Rust (programming language)
Scala (programming language)
Scope (computer science)
Side-effect (computer science)
Standard ML
Static typing
Strong typing
Tail call
Type inference
TypeScript
Type system
University of Edinburgh
Name
enML
Name
enML
Paradigm
Functional programming
Generic programming
Imperative programming
Multi-paradigm programming language
SameAs
51iCo
m.055mc
MetaLanguage
Meta Language
ML
ML
ML
ML
ML
ML (langage)
ML (lenguaje de programación)
ML (linguagem de programação)
ML (linguaggio di programmazione)
ML (ohjelmointikieli)
ML (programlama dili)
ML (programlingvo)
ML (programmeertaal)
ML (Programmiersprache)
ML (programming language)
ML (programozási nyelv)
ML (programski jezik)
ML (programski jezik)
ML (programski jezik)
ML (programspråk)
ML (γλώσσα προγραμματισμού)
ML (שפת תכנות)
ML (プログラミング言語)
ML (프로그래밍 언어)
ML语言
Q860654
أم أل (لغة برمجة)
ام‌ال
Subject
Category:Academic programming languages
Category:Functional languages
Category:ML programming language family
Category:Pattern matching programming languages
Category:Procedural programming languages
Category:Programming languages created in 1973
Category:Statically typed programming languages
Typing
Static typing
Strong typing
Type inference
Url
default.aspx
WasDerivedFrom
ML (programming language)?oldid=1106423335&ns=0
WikiPageLength
13744
Wikipage page ID
20607
Wikipage revision ID
1106423335
WikiPageUsesTemplate
Template:!
Template:Authority control
Template:Cite book
Template:Infobox programming language
Template:ISBN
Template:More citations needed
Template:Other uses
Template:Programming languages
Template:Reflist
Template:Section link
Template:Short description
Template:Snd
Template:Start date and age
Template:Webarchive
Wordnet_type
synset-programming language-noun-1