Standard ML
Standard ML is a functional programming language which is a dialect of ML (programming language). It is sometimes used for writing compilers and in theorem provers.
Example
Here is an example of a factorial function written in a simple, non-tail recursive, style.
fun fac (0: int) = 1 (* the: int part means that 0 and n are integers *) | fac (n: int) = n * fac (n - 1)
Programming languages