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 2 Sep | Functional Programming? Haskell? | Chapters 1 and 2 | Frank |
Thu 4 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 9 Sep | Lists and recursion | Chapters 5 and 6 | Frank |
Thu 11 Sep |
Data types and type classes
Example code from lecture |
Chapter 8 (until 8.6) | Matthijs | |
38 | Tue 16 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 18 Sep |
Data
structures The Code for the point location example |
Frank | ||
39 | Tue 23 Sep |
Case studies
Q&A session |
Chapters 8.6 | Mathijs |
Thu 25 Sep |
Input and output
Example code from lecture |
Chapter 10 | Matthijs | |
40 |
Tue 30 Sep |
Project management and design | Frank | |
Thu 2 Oct 13:30-15:30 | Midterm exam | |||
41 | Tue 7 Oct |
Functors and monads
Example code from lecture |
Chapter 12 (except 12.2) | Matthijs |
Thu 9 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 14 Oct |
Testing
Code from the lecture |
Chapter 11 of Real World Haskell | Frank |
Thu 16 Oct | Lazy evaluation | Chapter 15 | Frank | |
43 | Tue 21 Oct |
More monads and applicatives
Example code from lecture |
Chapter 12.2 | Matthijs |
Thu 23 Oct |
Exam Practice Session | |||
44 |
Tue 28 Oct |
Q&A session (for exam prep) |
Code from the lecture
Syllabus |
Frank |
Thu 30 Oct |
No Lecture – prepare for the exam! | |||
45 | Thu 6 Nov 13:30-16:30 | Final exam |