Lectures

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

Week Date Topic Preparatory reading Lecturer
37 Tue 8 Sep Functional Programming? Haskell? Chapters 1 and 2 Frank
Thu 10 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
38 Tue 15 Sep Lists and recursion Chapters 5 and 6 Frank
Thu 17 Sep Data types and type classes
Example code from lecture
Chapter 8 (until 8.6) Matthijs
39 Tue 22 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 24 Sep Data structures
The Code for the point location example
Frank
40 Tue 28 Sep Case studies
Q&A session
Chapters 8.6 Mathijs
Thu 1 Oct Input and output
Example code from lecture
Chapter 10 Matthijs
41 Tue 6 Oct
Project management and design Frank
Thu 8 Oct 13:30-15:30 Midterm exam
42 Tue 13 Oct Functors and monads
Example code from lecture
Chapter 12 (except 12.2) Matthijs
Thu 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
43 Tue 20 Oct Testing
Code from the lecture
Chapter 11 of Real World Haskell Frank
Thu 22 Oct Lazy evaluation Chapter 15 Frank
44 Tue 27 Oct More monads and applicatives
Example code from lecture
Chapter 12.2 Matthijs
Thu 29 Oct
Exam Practice Session
45 Tue 3 Nov
Q&A session (for exam prep)
Example code & Questions/solutions used
Code from the lecture
Syllabus
Frank
Thu 5 Nov
No Lecture – prepare for the exam!
46 Thu 12 Nov 13:30-16:30 Final exam