![]() |
Course Outline |
![]() |
Introduction to functional programming using the languages Haskell. Topics include all data types, type inference, pattern-matching, recursion, polymorphism, higher-order functions, lazy vs eager evaluation, modules and monads.
|
|
Date |
|
Topics |
| 1 | Jan 05/07 | [1] 1 - 3 | Introduction to Functional Programming, No lab this week |
| 2 | Jan 12/14 | [1] 4 - 5 | Recursion and Data Types |
| 3 | Jan 19/21 | [1] 6 - 7 | Lists |
| 4 | Jan 26/28 | [1] 9 - 10 | Patterns of Computation and Functions as Values, Test 1 |
| 5 | Feb 02/04 | [1] 12 - 13 | Overloading, Type Classes and Type Checking |
| 6 | Feb 09/11 | [1] 14 - 15 | Algebraic Types, Test 2 |
| 7* | Feb 23/25 | [1] 16 | Abstract Data Types |
| 8 | Mar 02/04 | [1] 17 | Lazy Evaluation |
| 9 | Mar 09/11 | [1] 18 | Programming with Actions, Test 3 |
| 10 | Mar 16/18 | [1] 8, 14.7 & 17.9 | Reasoning about Programs |
| 11 | Mar 23/25 | [1] 8, 14.7 & 17.9 | Reasoning about Programs II |
| 12 | Mar 30/Apr 01 | [2] 7 | Language extensions, Review, No lab this week |