Skip main navigation
We use cookies to give you a better experience, if that’s ok you can close this message and carry on browsing. For more info read our cookies policy.
We use cookies to give you a better experience. Carry on browsing if you're happy with this, or read our cookies policy for more information.


Haskell programs compute by reduction, i.e. gradually replacing expressions by their values.

A function takes one or more arguments and computes a result. Given the same arguments, the result will always be the same. In Haskell there are no side-effects.

The list is a key data structure. It is quite similar to lists in other languages. However note that Haskell lists are immutable.

Share this article:

This article is from the free online course:

Functional Programming in Haskell: Supercharge Your Coding

University of Glasgow

Get a taste of this course

Find out what this course is like by previewing some of the course steps before you join:

Contact FutureLearn for Support