What is Lambda calculus?

Asked

Viewed 258 times

5

I heard about it once, but I don’t understand its relationship to programming. Where I could apply this knowledge in development?

1 answer

2

Calculation λ

The λ calculation is a single transformation rule, variable substitution and a single function definition scheme. It was introduced in the 1930s by Alonzo Church as a way to formalize the concept of effective computability. It is also considered to be the smallest universal programming language, in the sense that any computable function can be expressed and evaluated using the formalism of this calculation.

If you go a little deeper, you will see the first results of the theory of computation developed using the formalisms of the Turing machine and the λ calculus. The central concept in the λ calculus is the expression, where an identifier, i.e., a "name" or "variable" is identified by letters a, b, c, .... An expression is defined as <expression> := <name> | <function> | <application> or <function> := λ <name>.<expression>, for example.

Examples

(+ 4 5)
(+ 4 5) = 9

Function applications in lambda calculus are written in prefix format.

λx.(x + 1)

The expression can be read like this: "function of x to which (.) adds x to 1". Sometimes it is customary to use always prefixed operators, and in this case it would be typed (+ x 1).

(λx. + x 1)

"function of x that (.) increments x of 1"

λ determines that there is a function, and is immediately followed by a variable, called the function’s formal parameter

Where I could apply this developing knowledge?

I think the greatest added value would be knowledge. I don’t know where you could apply Calculus λ, but much that exists today has been done from the formalization of this calculus. For example, John Mccarthy extended the λ calculus to build the first language of the Lisp family.

References:

Browser other questions tagged

You are not signed in. Login or sign up in order to post.