• Course Delivery
  • Tuition
  • Duration
    6 Weeks


Imagine programming with pure functions that are shorter, more elegant, easier to reason about, and better to execute. This is functional programming in Haskell the latest programming language paradigm.

In this course you will learn powerful functional programming techniques such as immutable data structures, higher order functions, and lambdas. Learning functional programming will make you a better programmer whatever the language you use.

All major tech companies are adopting functional programming techniques, whether it's Scala at Twitter, MapReduce at Google, or Haskell at Facebook. In fact, early work on the Haskell functional programming language took place here at the University of Glasgow, and we've been teaching it to our undergraduate Computing Science students for many years.

We introduce the Haskell language with interactive tutorials and practical programming exercises. We'll take you from the basics through to advanced features of functional programming. Deconstruct buzzwords and phrases from lambda calculus to monads and explore the history, present status and future prospects of functional programming.


On successful completion this course, you will be able to:

  • Develop programming which involves basic Haskell techniques, including pure function definitions
  • Interpret data structures and function interfaces using types
  • Develop, modify and explore code using standard Haskell platform tools
  • Explore standard combinators for operating on lists
  • Produce definitions of algebraic data types and functions that traverse such types
  • Apply formal methods to prove properties of functional programming
  • Justify using common standard monads (including IO and Maybe)

Key Dates

Application Deadline
Start Date
15 Apr 2019
15 Apr 2019

What it's like to study online

100% online for complete flexibility
Our part-time online programmes are ideal if you're working full-time or have family commitments.
Connect to campus from anywhere
All you need for our online programmes is a device with internet access.
Gain a global perspective
As an online student, you'll be part of an international community of academics and learners.

Want to learn more?

Find Out More
We use cookies to improve your visit to our website. By using this website, you consent to the use of cookies. If you would like to, you can change your cookie preferences at any time.