Graham Hutton, University
of Nottingham
The functional programming component of the exam will be an
essay question.
Electronic copies of all of these materials are also available on Moodle.
Work through the lecture slides and lecture videos, and make sure that you are able to understand and reproduce most of the examples, as these or variations on them often come up in the exam in some form. However, you can't learn Haskell just by reading! Trying out examples for yourself in GHC should be a key part of your revision process.
Review your solutions to the exercise sheets and coursework. The three one-page exercise sheet are designed to emphasise the most important aspects of Haskell, while the main coursework is designed to give experience of using several features of Haskell in combination.
The module is based directly on the book Programming in Haskell, and the slides follow the same structure and content. Reading the book in combination with the slides would be helpful to your revision. Trying out some of the exercises in the book is also recommended.
The core of the module is the first half of the course (up to the lecture
on recursion), which is covered in chapters 1-6 of the book. Make sure that
you know this material well, and are able to write simple functions using list
comprehensions and recursion, as these are the fundamental skills for the
module. A sound knowledge of this material should be sufficient to obtain a
pass mark in the functional programming component of the exam, but to obtain a
good mark you will need to be familiar with all of the examinable material.
Moreover, a number of other modules and programming languages build upon the
foundations laid in this module, so it important to understand all the concepts
rather than just aiming to pass the exam.