Functional programming
This course addresses basic programming principles in functional programming, including recursive functions and data types, anonymous functions, and higher-order functions.
Practical programming will be done in a modern functional programming language with support for advanced concepts in functional programming, such as lazy evaluation, pattern matching, monads, and polymorphism.
The course consists of two modules, theory and practical exercises.
Teaching Format
Teaching consists of lectures and supervision.
Assessment
Assessment takes place through a written exam (theory part), and through written reports and oral presentations (practical exercises).





