Tutorials

# Lambda Calculus

What is Lambda Calculus?

What is Lambda Calculus?

## Lambda Calculus - Learn about the Lambda Calculus

Introduction

Lambda calculus or to express differently, λ-calculus formulated by famous American mathematician and logician Alonzo Church is a system of mathematical logic that played key role in the subsequent development of computer science. This mathematical system of logic made the computation based on function abstraction and variable and substitution based application possible. This system of mathematical logic is the first stepping stone towards conceptualization of effective computability in the path shown by Alonzo Church. Etymologically the name Lambda as given to this system of logic can be traced to Greek alphabet signifying binding of the variables in a logical function. This simple and universally accepted model of computation later has been contested by Turing machines in respect of expressiveness as shown by Alan Turing back in 1937.

Variants of Lambda calculus and development of computing theory

Notion of variable binding and substitution made this system of mathematical logic crucially too important for the development of computing and computing theories as a whole. In the subsequent time various systems born out of the core concept creating both typed and untyped variants of Lambda calculus. As for historical importance untyped variant of Lambda calculus is more important in contributing to the development of computing theories and mathematical models. In the untyped lambda calculus the function application experiences no restrictions and thus a situation emerges in which the domain of a particular function is not built into the system making the function free of domain specifications. In the time to come depending on this logic the basis of computing theory will be formulated in the Church-Turing theory where it would be claimed that the untyped variant of Lambda calculus can perform effectively all calculable functions. The typed variant of this computing logic restricts itself to application of function in which it depends upon the function to accept the given input (type) of data.