Functional Programming (ITI0212 - Spring 2025)
Lectures: Wednesday 12:00-13:30, ICO-217 (IT College Building)
Labs: Thursday 14:00 - 15:30, ICT-403 and Friday 14:00 - 15:30, ICO-410
Instructors: Matt Earnshaw, Kat Zhuchko
- Course specification/syllabus
- Discord (optional)
Announcements
- No labs 15-05 and 16-05. No lecture 21-05.
Final Exam
- Specification
- Most exams will be conducted from 29th-30th May. Please email maearn@taltech.ee if you have not received an invitation to schedule a time.
Homework assignments
To submit homeworks, commit your solutions to a private repository named iti0212-2025 on gitlab.cs.ttu.ee.
- Homework 1 due 12th March
- Homework 2 due 9th April
- Homework 3 due 14th May
Course project
- Specification, due 9th May
Lectures and Lab Sheets
Week | Lecture Date | Topic | Lab | Video |
---|---|---|---|---|
01 | 05/02/2025 | Course Introduction | lab01 | none |
02 | 12/02/2025 | Inductive Types and Recursive Functions | lab02 | mp4 |
03 | 19/02/2025 | Parameterised Types and Polymorphic Functions | lab03 | mp4 |
04 | 26/02/2025 | Function Literals and Higher-Order Functions | lab04 | mp4 |
05 | 05/03/2025 | Type Classes I | lab05 | mp4 |
06 | 12/03/2025 | Type Classes II: Functors, Applicatives, Monads | lab06 | mp4 |
07 | 19/03/2025 | More Monads | lab07 | mp4 |
08 | 26/03/2025 | Indexed Types and Dependent Functions | lab08 | mp4 |
09 | 02/04/2025 | [No lecture] | ||
10 | 09/04/2025 | Dependent types in action | lab09 | mp4 |
11 | 16/04/2025 | Propositions as types I | lab10 | mp4 |
12 | 23/04/2025 | First-order logic | lab11 | mp4 |
13 | 30/04/2025 | Inductive equality | lab12 | mp4 |
14 | 07/05/2025 | Proving properties of programs | lab13 | mp4 |
15 | 14/05/2025 | Review | none | mp4 |