Functional Programming

Graham Hutton, University of Nottingham


This is an introductory course on functional programming in Haskell. It is designed for first year computing students in Nottingham, but the materials are made freely available on YouTube.

The course is based on part I of Programming in Haskell.


       Book 2e Cover


  1. Course Overview
  2. Haskell Demo
  3. Introduction
  4. First Steps
  5. Types and Classes
  6. Defining Functions
  7. List Comprehensions
  8. Recursive Functions
  9. Exercises on Recursion
  10. Higher-Order Functions
  11. How To Think Recursively
  12. Declaring Types and Classes
  13. The Countdown Problem
  14. Interactive Programming
  15. Exercises on Interaction
  16. Lazy Evaluation
  17. Course Wrap Up

Additional material: