The ML language

Development · Tutorials & FAQs · Reference · External

ML (which stands for Meta-Language) is a functional language which, unlike conventional (procedural) languages, is mathematically "pure". Assignment to variables in the way that it is done in procedural languages is not possible; a variable is defined as in mathematics as being equal to a particular value, so a statement such as "X = X + 1" would make no sense, as there is no value of X which is equal to X + 1. There are also no explicit control flow operations (loops, goto statements and so on); recursive function definitions are used to achieve the same effect.

A number of dialects of ML have evolved, including Standard ML (SML), CAML, Objective CAML, and so on. ML is a "strict" language, unlike "lazy" languages such as Haskell, although lazy ML dialects (e.g. Lazy SML) also exist.


Development tools:

Software package Harlequin MLWorks
The personal edition of Harlequin's commercial ML implementation.
   ¤  Sep 1998. Reproduced by permission; NOT REDISTRIBUTABLE without the express permission of Harlequin.
Home site: http://www.harlequin.com/
Software package Standard ML of New Jersey 110.0.7
A free implementation of Standard ML for Windows which includes Concurrent ML. Source code is also included.
   ¤  Sep 2000. Freeware.
Home site: http://cm.bell-labs.com/cm/cs/what/smlnj/index.html
Software package Moscow ML 2.0
A free implementation of ML for Windows. Source code is also available.
   ¤  Aug 2000. Freeware.
Home site: http://www.dina.kvl.dk/~sestoft/mosml.html
Software package Caml Light 7.4
A free ML implementation for Windows.
   ¤  Dec 1997. Freeware.
Home site: ftp://ftp.inria.fr/lang/caml-light/
Software package Objective Caml
An object-oriented ML implementation for Windows from INRIA.
   ¤  Jul 2001. Freeware.
Home site: http://caml.inria.fr/


Tutorials and FAQs:

Document A Gentle Introduction to ML
An entertaining tutorial on functional programming in general, and ML in particular.
   ¤  21 Apr 1999. Reproduced by permission.
Home site: http://www.dcs.napier.ac.uk/course-notes/sml/manual.html
Document The Moscow ML Owner's Manual
A guide to installing and using the Moscow ML system.
   ¤  Aug 1999. Freely redistributable.
Home site: http://www.dina.kvl.dk/~sestoft/manual/manual.html
Document The ML FAQ
Questions and answers about ML from the newsgroup comp.lang.ml.
   ¤  1 May 2000. Reproduced by permission.
Home site: http://www.faqs.org/faqs/
Document Introduction to Programming Langauges
A comparative study of programming languages, their development and the development of the programming paradigms that they embody.
   ¤  3 Aug 2001. Reproduced by permission.
Home site: http://cs.wwc.edu/~aabyan/221_2/PLBOOK/
Document The Functional Programming FAQ
Questions and answers about functional programming in general.
   ¤  1 Aug 2001. Reproduced by permission.
Home site: http://www.cs.nott.ac.uk/Department/Staff/gmh/faq.html


Reference material:

Document The Caml Light User's Guide
The language reference manual and system documentation for the Caml Light system.
   ¤  2 Dec 1997. Freely redistributable.
Home site: http://pauillac.inria.fr/caml/man-caml/
Document The Moscow ML Language Overview
The reference manual for the subset of ML implemented by the Moscow ML system.
   ¤  Aug 1999. Freely redistributable.
Home site: http://www.dina.kvl.dk/~sestoft/mosmlref/mosmlref.html
Document The Moscow ML Library Manual
A reference summary for the standard library supported by Moscow ML.
   ¤  2 Aug 2000. Freely redistributable.
Home site: http://www.dina.kvl.dk/~sestoft/mosmllib/index.html
Document The Objective Caml User's Guide
Documentation for the Objective Caml system, giving a language overview and reference, documentation for the OCaml software system, and library documentation.
   ¤  Jul 2001. Freely redistributable.
Home site: http://pauillac.inria.fr/ocaml/htmlman/


External resources:

External website The Caml home page
External website The Moscow ML home page
External website Information about Standard ML
Information from the Fox Project at CMU.
External website Information about Standard ML of New Jersey
External website Harlequin, Inc.
A company which provides a range of ML software and documentation, including a free ML implementation for Windows.
External website ML links at Yahoo
These are also available at Yahoo UK.
External website The comp.lang.ml newsgroup
A newsgroup for discussions of ML-related issues.
External website The comp.functional newsgroup
A good source of information about functional programming in general.


BURKS version 6 · Copyright © John English 1996-2001. All rights reserved.