Last updated on 9th Feburary 2017


Graham Hutton
School of Computer Science
University of Nottingham

Module Information

Functional languages represent the leading edge of programming language design, and the primary setting in which new programming concepts are introduced and studied. This module builds upon the introductory module G51PGP Programming Paradigms, by focussing on a number of more advanced topics in functional programming, including aspects of recent and current research. The precise topics covered will vary from year to year, but will include topics such as programming with effects, reasoning about programs, improving efficiency, and functional pearls.



The coursework for the module comprises two extended programming exercises, and will be released here at the appropriate points during the module.

Learning Material


      Book 2e Cover

Make sure to use the second edition (blue cover, 2016), as the original edition (yellow cover, 2007) is out-of-date.

Lectures will mostly be given at the whiteboard, and students are expected to take their own notes. Some supporting material is available here:

Useful Resources