Unit name | Functional Programming |
---|---|
Unit code | COMS10006 |
Credit points | 10 |
Level of study | C/4 |
Teaching block(s) |
Teaching Block 1 (weeks 1 - 12) |
Unit director | Dr. Wu |
Open unit status | Not open |
Pre-requisites |
None |
Co-requisites |
None |
School/department | Department of Computer Science |
Faculty | Faculty of Engineering |
This unit provides an introduction to functional programming, assuming no prior exposure to the paradigm. The aim is to introduce types and functions. Important principles include evaluation order, function composition, lambda-abstraction, higher-order functions, and function composition.
Students should be able to understand and produce programs using a functional programming language.
They should also be able to identify the key features of such languages.
Lectures, supported by labs and seminar sessions.
Up to 4 hours per week: 2 hours of lectures, 2 hours labs, interchanged with seminar sessions as appropriate.
Exam: 100%
Richard Bird. Thinking functionally with Haskell. ISBN: 9781107452640.
Miran Lipovaca. Learn you a Haskell for great good. ISBN 9781593272838.