Advanced Functional Programming
Graham Hutton, University of Nottingham
Overview
This is an advanced course on functional programming in Haskell.
It is designed for second year computing students in Nottingham, but
the materials are made freely available on
YouTube.
The course is based
on part II of Programming in Haskell.
Textbook
Lectures
The course starts in January 2025, and two videos will be released here per week.
- Course Overview
- Sudoku I: First Steps
- Sudoku II: Initial Solvers
- Sudoku III: Improving Performance
- Functors
- Applicative Functors
- Monads I: Basic Concepts
- Monads II: Maybe, List and State
- Monads III: State Revisited
- Monads IV: Generics, Laws and Benefits
- Reasoning About Programs
- Induction
- Making Append Vanish: Fast Reverse
- Making Append Vanish II: Fast Flatten
- Compiler Correctness
Additional material:
Resources