lambda-calculus definition mathematics
(Normally written with a Greek letter lambda). A branch of mathematical logic developed by Alonzo Church
in the late 1930s and early 1940s, dealing with the application of functions
to their arguments. The pure lambda-calculus
contains no constants - neither numbers nor mathematical functions such as plus - and is untyped. It consists only of lambda abstractions (functions), variables and applications of one function to another. All entities must therefore be represented as functions. For example, the natural number N can be represented as the function which applies its first argument to its second N times (Church integer
Church invented lambda-calculus in order to set up a foundational project restricting mathematics to quantities with "effective procedures". Unfortunately, the resulting system admits Russell's paradox
in a particularly nasty way; Church couldn't see any way to get rid of it, and gave the project up.
Most functional programming
languages are equivalent to lambda-calculus extended with constants and types. Lisp
uses a variant of lambda notation for defining functions but only its purely functional subset is really equivalent to lambda-calculus.