Lectures

Be aware: the following schedule and the contents of the slides are currently still subject to change.

Week Date Topic Preparatory reading Lecturer
36 Tue 6 Sep Functional Programming? Haskell? Chapters 1 and 2 Frank
Thu 8 Sep Basics Chapters 4 (up to 4.4) and 3
Chapter 5 from the Lecture Notes
Frank
37 Tue 13 Sep Lists and recursion Chapters 5 and 6 Frank
Thu 15 Sep Data types and type classes
Example code from lecture
Chapter 8 (until 8.6) Matthijs
38 Tue 20 Sep Higher-order functions
Writing applyAll as a fold
Example code from lecture
Example Python code demonstrating map/filter/fold
Chapter 7 and 4.5-4.6 Matthijs
Thu 22 Sep Data structures
The Code for the point location example
Frank
39 Tue 27 Sep Case studies
Q&A session
Chapters 8.6 Frank
Thu 29 Sep Project management and design Frank
40 Tue 4 Oct
Input and output
Example code from lecture
Chapter 10 Matthijs
Thu 6 Oct 13:30-15:30 Midterm exam
41 Tue 11 Oct Functors and monads
Example code from lecture
Chapter 12 (except 12.2) Matthijs
Thu 13 Oct Laws and induction
Example proofs from lecture
Chapter 16 (up to 16.6)
Chapter 13 from the Lecture Notes
More about correctness (optional):
Matthijs
42 Tue 18 Oct Testing
Code from the lecture
Chapter 11 of Real World Haskell Frank
Thu 20 Oct Lazy evaluation Chapter 15 Frank
43 Tue 25 Oct More monads and applicatives
Example code from lecture
Chapter 12.2 Matthijs
Thu 27 Oct Guest lecture Extended version Alejandro Serrano Mena
44 Tue 1 Nov
Q&A session (for exam prep) Syllabus Matthijs
Thu 3 Nov
No Lecture – prepare for the exam!
45 Thu 10 Nov 20:00-22:00 Final exam
02 Thu 12 Jan 17:00-20:00 Retake exam