Teaching Responsibility
LJMU Schools involved in Delivery:
LJMU Partner Taught
Learning Methods
Lecture
Practical
Module Offerings
6519CSQR-JAN-PAR
6519CSQR-SEP-PAR
6519CSQR-SEP_NS-PAR
Aims
The aims of this module are to present the basic ideas of functional programming languages whilst demonstrating the main elements of good programming style; allowing the illustration of some uses and applications for functional programming
Learning Outcomes
1.
Expound on the main features and advantages of a functional programming language
2.
Evaluate how algorithms are implemented in a functional programming language
3.
Analyse how functional programming techniques are used to solve problems
Module Content
Outline Syllabus:Classification of Programming Languages
Distinctive Features of Functional Programming Languages
The Lambda Calculus - syntax and semantics
Higher-order functions
Currying and Uncurrying
Recursion
Type systems
Numerical Types and Operations
Lists Processing
Overview of Advanced features: e.g., modules; interactive programs; lazy evaluation; proving program properties.
Additional Information:The module combines many of the concepts taught over the course of the Computer Science Programme such as complexity theory and algorithm design.