|The Lambda Calculus, its Syntax and Semantics|
Henk P. Barendregt
The Lambda Calculus, treated in this book mainly in its untyped version, consists of a collection of expressions, called lambda terms, together with ways how to rewrite and identify these. In the parts conversion, reduction, theories, and models the view is respectively 'algebraic', computational, with more ('coinductive') identifications, and finally set-theoretic. The lambda terms are built up from variables, using application and abstraction. Applying a term F to M has as intention that F is a function, M its argument, and FM the result of the application. This is only the intention: to actually obtain the result one has to rewrite the expression FM according to the reduction rules. Abstraction provides a way to create functions according to the effect when applying them. The power of the theory comes from the fact that computations, both terminating and infinite, can be expressed by lambda terms at a 'comfortable' level of abstraction.
30 April 2012
Buy from Amazon: UK US