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 3 Sep Functional Programming? Haskell? Chapters 1 and 2 Frank
Thu 5 Sep Basics Chapters 4 (up to 4.4) and 3
Chapter 5 from the Lecture Notes
Notes on type inference from during the lecture
Frank
37 Tue 10 Sep Lists and recursion Chapters 5 and 6 Frank
Thu 12 Sep Data types and type classes
Example code from lecture
Chapter 8 (until 8.6) Matthijs
38 Tue 17 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 19 Sep Data structures
The Code for the point location example
Frank
39 Tue 24 Sep Case studies
Q&A session
Chapters 8.6 Mathijs
Thu 26 Sep Input and output
Example code from lecture
Chapter 10 Matthijs
40 Tue 1 Oct
Project management and design Frank
Thu 3 Oct 13:30-16:30 Midterm exam
41 Tue 8 Oct No Lecture - No room :(
41 Thu 10 Oct Functors and monads
Example code from lecture
Chapter 12 (except 12.2) Matthijs
Tue 15 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 Thu 17 Oct Testing
Code from the lecture
Chapter 11 of Real World Haskell Frank
Tue 22 Oct Lazy evaluation Chapter 15 Frank
43 Thu 24 Oct More monads and applicatives
Example code from lecture
Chapter 12.2 Matthijs
44 Tue 29 Oct
Q&A session (for exam prep) Code from the lecture
Syllabus
Frank
Thu 31 Oct
No Lecture – prepare for the exam!
45 Thu 7 Nov 13:30-16:30 Final exam
02 Thu 9 Jan 17:00-20:00 Retake exam