Lambda Calculi: A Guide

  • Chris Hankin
Part of the Handbook of Philosophical Logic book series (HALO, volume 15)


One of the universal notions of programming languages is functional abstraction. The methods of Java and the functions defined and used in functional programming languages, such as Haskell, are instances of this general notion. The inspiration for this form of abstraction mechanism comes from Mathematical Logic; notably Church’s λ(lambda)-calculi and Schönfinkel’s and Curry’s Combinatory Logic. A proper study of these foundations leads to a better understanding of some of the fundamental issues in Computer Science.


Normal Form Type Scheme Functional Programming Denotational Semantic Reduction Sequence 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [Barendregt, 1984]
    H. P. Barendregt, The Lambda Calculus: Its Syntax and Semantics, 2nd edition, North Holland, 1984.Google Scholar
  2. [Barendregt, 1992]
    H. P. Barendregt, Lambda Calculi with Types, in Handbook of Logic in Computer Science, Volume II, S. Abramsky, D. Gabbay and T. S. E. Maibaum (eds), Oxford University Press, 1992.Google Scholar
  3. [Church, 1941]
    A. Church, The Calculi of Lambda Conversion, Princeton University Press, 1941.Google Scholar
  4. [Curien, 1993]
    P.-L. Curien, Categorical Combinators, Sequential Algorithms and Functional Programming, 2nd edition, Birkhäuser, 1993.Google Scholar
  5. [Damas and Milner, 1982]
    L. Damas and R. Milner, Principal Type Schemes for Functional Programs, in Proceedings of POPL’82, ACM Press, 1982.Google Scholar
  6. [Dowty et al., 1981]
    D. R. Dowty, R. E. Wall and S. Peters, Introduction to Montague Semantics, D. Reidel Publishing Company, 1981.Google Scholar
  7. [Field and Harrison, 1988]
    A. J. Field and P. G. Harrison, Functional Programming, Addison Wesley, 1988.Google Scholar
  8. [Hankin, 1994]
    C. L. Hankin, Lambda Calculi: A Guide for Computer Scientists, Oxford University Press, 1994.Google Scholar
  9. [Hindley and Seldin, 1986]
    J. R. Hindley and J. P. Seldin, Introduction to Combinators and λ-Calculus, Cambridge University Press, 1986.Google Scholar
  10. [Hopcroft and Ullman, 1979]
    J. E. Hopcroft and J. D. Ullman, Introduction to Automata Theory, Languages and Computation, Addison Wesley, 1979.Google Scholar
  11. [Huet, 1990]
    G. Huet, Logical Foundations of Functional Programming, Addison Wesley, 1990.Google Scholar
  12. [Klop, 1980]
    J. W. Klop, Combinatory Reduction Systems, CWI Report, Amsterdam, 1980.Google Scholar
  13. [Krivine, 1993]
    J. L. Krivi, Lambda-Calculus, Types and Models, Masson, 1993.Google Scholar
  14. [Michaelson, 1989]
    G. Michaelson, An Introduction to Functional Programming Through Lambda Calculus, Addison Wesley, 1989.Google Scholar
  15. [Peyton Jones, 1987]
    S. L. Peyton Jones, The Implementation of Functional Programming Languages, Prentice Hall International, 1987.Google Scholar
  16. [Reade, 1989]
    C. Reade, Elements of Functional Programming, Addison Wesley, 1989.Google Scholar
  17. [Stoy, 1977]
    J. E. Stoy, Denotational semantics: the Scott–Strachey approach to programming language theory, MIT Press, 1977.Google Scholar
  18. [Turner, 1991]
    R. Turner, Constructive Foundations for Functional Languages, McGraw Hill, 1991.Google Scholar
  19. [Winskel, 1993]
    G. Winskel, The Formal Semantics of Programming Languages, MIT Press, 1993.Google Scholar

Copyright information

© Springer Science+Business Media B.V. 2011

Authors and Affiliations

  1. 1.Imperial College LondonLondonUK

Personalised recommendations