Lecture overview -- Keyboard shortcut: 'u'  Previous page: Lambda Expressions in Scheme -- Keyboard shortcut: 'p'  Next page: Function objects -- Keyboard shortcut: 'n'  Lecture notes - all slides and notes together  slide -- Keyboard shortcut: 't'  Help page about these notes  Alphabetic index  Course home  Lecture 1 - Page 29 : 49
Programming Paradigms
Introduction to Functional Programming in Scheme
Lambda calculus

We will here introduce the notation of the lambda calculus, mainly in order to understand the inspiration which led to the concept of lambda expressions in Lisp and Scheme.

Lambda calculus is a more dense notation than the similar Scheme notation

Lambda calculusScheme
Abstractionλ v . E(lambda (v) E)
CombinationE1 E2(E1 E2)

A comparison of the notations of abstraction and combination (application) in the lambda calculus and Lisp. In some variants of lambda calculus there are more parentheses than shown here: (λ v . E). However, mathematicians tend to like ultra brief notation, and they often eliminate the parentheses. This stands as a contrast to Lisp and Scheme programmers.

 

Lambda calculus is covered in a later PP lecture

Scheme before lambda calculus