Lambda-calculus and combinators, an introduction /
Lambda-Calculus & Combinators
J. Roger Hindley, Jonathan P. Seldin.
- Second edition.
- Cambridge : Cambridge University Press, 2008.
- 1 online resource (xi, 345 pages) : digital, PDF file(s).
Title from publisher's bibliographic system (viewed on 05 Oct 2015).
Preface; 1. The lambda-calculus; 2. Combinatory logic; 3. The power of lambda and combinations; 4. Representing the computable functions; 5. Undecidability theorem; 6. Formal theories; 7. Extensionality in lambda-calculus; 8. Extensionality in CL; 9. Correspondence between lambda and CL; 10. Simple typing, Church-style; 11. Simple typing, Curry-style in CL; 12. Simple typing, Curry-style in lambda; 13. Generalizations of typing; 14. Models of CL; 15. Models of lambda-calculus; 16. Scott's D and other models; Appendix A1. Bound variables and alpha-conversion; Appendix A2. Confluence proofs; Appendix A3. Strong normalization proofs; Appendix A4. Care of your pet combinator; Appendix A5. Answers to starred exercises; Bibliography; Index.
Combinatory logic and lambda-calculus, originally devised in the 1920s, have since developed into linguistic tools, especially useful in programming languages. The authors' previous book served as the main reference for introductory courses on lambda-calculus for over 20 years: this version is thoroughly revised and offers an account of the subject with the same authoritative exposition. The grammar and basic properties of both combinatory logic and lambda-calculus are discussed, followed by an introduction to type-theory. Typed and untyped versions of the systems, and their differences, are covered. Lambda-calculus models, which lie behind much of the semantics of programming languages, are also explained in depth. The treatment is as non-technical as possible, with the main ideas emphasized and illustrated by examples. Many exercises are included, from routine to advanced, with solutions to most at the end of the book.