Lecture schedule

The lecturing schedule with slides are given below. The slides will be updated as the course progresses. Lectures will take place in person in room 8.06 of the Dalton 500 building.

There is a new programming assignment every week, and the peer reviews for that assignment are due one week later.

Week Date Slides Deadlines
6 5/2 No lecture: Masters Introduction
7/2 Welcome & introduction
7 12/2 Quickcheck
14/2 Laziness
8 19/2 Monads Assignment 1
21/2 Applicative functors Submit project proposal
9 26/2 Lambda calculus
28/2 GADTs Assignment 2
10 4/3 Elm & GADT wrap-up
6/3 Type families
11 11/3 Generics Assignment 3
13/3 Agda - Slides, Demo Project status report
12 18/3 Agda
20/3 Agda Assignment 4
13 25/3
27/3 No lecture - exec(ut)
14 1/4 No lecture - Easter Monday
3/4 Project presentations
9/4 Exam
12/4 Project submission deadline