Lambda (λ) calculus
λ-calculus is a mathematical formalism for denoting computation in an abstract form using functions. This brings forth a formal notation and transformation rules for representation (function abstraction) and manipulation (function application) of lambda terms. The key to this formalism is variable binding and substitution. Alonzo Church created lambda calculus in an attempt to prove mathematical logic.
The λ-calculus provides a simple semantics for computation using computable functions based on Church-Turing thesis (readers are urged to take a look at the history of lambda calculus, its motivation, and mathematical implications at a little deeper level to better appreciate this formalism and its consequences, as opposed to just being sheer consumers) by incorporating the following simplifications and concepts:
Anonymous functions
This involves treating functions as anonymous, without giving them explicit names.
For example, take this simple static
method:
public static...