Introduction To Haskell


Haskell is described as an advanced, purely functional programming language that began its life in the 1980s. It is named after the logican Haskell Curry.

Functional programming is one of the four major programming paradigms (procedural, object-oriented, declarative are the others) that are used to describe programming languages and approaches to programming. Some languages, like C#, allow you to use several of these paradigms, with some mixing and matching on occasion. Haskell, however, is just functional. Your first challenge with Haskell is to stop trying to program imperatively and to start to think about the functional approach.

These pages have been made from notes taken whilst finding my own way with Haskell and with the A level Computer Science in mind. A reasonably basic understanding is all that is required there. This is meant to be enough to get started. For that reason, lots of language features, commonly used libraries and some of the deeper concepts associated with functional programming are not covered here.


I've used the Glasgow Haskell Compiler (GHC) for these pages. This can be downloaded and installed for free from WinGHCI is the name of the GUI that I've used. All of this cost £free.