The principal aim of this module is to introduce students to the functional programming paradigm.
Students should be able to understand the differences between imperative and functional programming, apply functional programming techniques, and write programs in Haskell.
This is an indicative module outline only to give an indication of the sort of topics that may be covered. Actual sessions held may differ.
By the end of the module, students should be able to:
Please see Talis Aspire link for most up to date list.
View reading list on Talis Aspire
Understanding of Functional Programming as a programming paradigm, including intermediate knowledge of programming abstractions and formal reasoning. See syllabus for details.
Technical skills.
Critical thinking.
Multitasking.
Type | Required |
---|---|
Lectures | 30 sessions of 1 hour (20%) |
Practical classes | 10 sessions of 1 hour (7%) |
Private study | 110 hours (73%) |
Total | 150 hours |
Background reading of recommended texts.
Work on unsupervised practical assignments.
Exam revision.
No further costs have been identified for this module.
You do not need to pass all assessment components to pass the module.
Students can register for this module without taking any assessment.
Weighting | Study time | |
---|---|---|
Coursework 1 | 15% | |
This assessment is eligible for self-certification (extension). |
||
Coursework 2 | 25% | |
Coursework 2. This assignment is worth more than 3 CATS and is not, therefore, eligible for self-certification. |
||
In-person Examination | 60% | |
CS141 exam
|
Weighting | Study time | |
---|---|---|
In-person Examination - Resit | 100% | |
CS141 resit examination
|
Individual feedback on coursework via Tabula
This module is Optional for:
This module is Option list B for: