Introduction to Functional Programming (1997/8)

John Harrison

Computer Science Tripos, Part II (General) and Diploma in Computer Science
Twelve lectures, beginning on Thu 15th Jan 1998, ending on Tue 10th Feb 1998
Tuesday, Thursday & Friday at 12:00 in the Rayleigh Lecture Room

Copies of slides

  1. Introduction and Overview: Colour Postscript
  2. Basics of ML: Colour Postscript
  3. ML's type system: Colour Postscript
  4. Recursive functions and recursive types: Colour Postscript
  5. Proving Programs Correct: Colour Postscript
  6. Effective ML: Colour Postscript
  7. Infinite data structures: Colour Postscript
  8. Imperative features of ML: Colour Postscript
  9. ML examples I: Symbolic Differentiation: Colour Postscript
  10. ML examples II: Recursive Descent Parsing: Colour Postscript
  11. ML examples III: A Prolog interpreter: Colour Postscript
  12. ML examples IV: Theorem Proving: Colour Postscript
Last year's course is here. Additional material is available from those who have taught the course in previous years: Mike Gordon and Andy Gordon. The theoretical part of the course is also covered by lecture notes from Larry Paulson.