COMS W3261 CS Theory
Lecture 25: The Lambda Calculus III

Outline

  1. Church numerals
  2. Arithmetic
  3. Logic
  4. Other language constructs
  5. The influence of the lambda calculus on programming languages

1. Church Numerals

2. Arithmetic

3. Logic

4. Other Language Constructs

5. The Influence of the Lambda Calculus on Programming Languages

6. Practice Problems

  1. Show that (λf. λx. f(f x)) E y →* E ( E y ).
  2. Evaluate add two three.
  3. Evaluate mul two three.
  4. Write a lambda expression for 3 + 5 * 7. Evaluate your expression using normal order and applicative order reduction.
  5. Evaluate not true.
  6. Write a lambda expression for the boolean predicate isZero and evaluate isZero one.

7. References


aho@cs.columbia.edu
verma@cs.columbia.edu