Comparison of programming languages (functional programming)

This page provides the comparison tables of functional programming instructions between programming languages. Comparison of basic instructions of imperative paradigm is provided by the comparison of basic instructions.

Function applications and lists
For brevity, these words will have the specified meanings in the following tables (unless noted to be part of language syntax):


 * funcN: A function. May be unary or n-ary (or always unary for languages without n-ary functions).
 * func1, func2, etc.: functions of specific arity. func (with no number) is the same as func1, also known as a projection in many languages.


 * pred: Unary function returning a Boolean value. (ML type: 'a -> bool) (C-like type: bool pred(T t)).
 * list: The list being operated on.
 * args: Comma-separated list of one or more argument names, in the form of arg1, arg2, ..., argn.
 * pattern: A pattern, in languages with pattern matching.
 * val: Any relevant value, depending on context.

Numerical operations on lists

 * comp: a binary function that returns a value indicating sort order (an integer in most languages).

Generating lists by combinatorics tools

 * start: first value of range.
 * step: increment of range.
 * count: number of items in range.
 * last: inclusive last value of range.
 * end: exclusive last value of range.