CS Haskell

Haskell is a lazy, pure functional programming language with non-strict semantics created in the late 1980’s by a committee of academics. It is named after logician Haskell Curry.


Haskell Definitions

  1. Functional
    • Functional programming is a programming paradigm—a style of building the structure and elements of computer programs—that treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data.
    • The meaning of Haskell programs are centered around evaluating expressions rather than executing instructions.
  2. Pure
    • Haskell expressions are always referentially transparent
    • No mutation! Everything (variables, data structures…) is immutable.
  3. Lazy
    • In Haskell, expressions are not evaluated until their results are actually needed.
    • It is possible to define and work with infinite data structures.
    • The ability to define control flow (structures) as abstractions instead of primitives

Lesson 0

Haskell Lesson 0

Learn Haskell Lesson 0 - download Glasgow Haskell Compiler (GHC)

Download Haskell Compiler


Lesson 1

Haskell Lesson 1

Write your first program

Using a Haskell compiler, such as GHC, you can compile the code to a standalone executable. Create a source file hello.hs containing:
main = putStrLn "Hello, World!"

Read Article

Compile Haskell


Lesson 2

Haskell Lesson 2

Data Types

Char Ex: 'a'
Bool Ex: True
String "A list of Char's" Ex: "Hello!"
Int Ex: 25
Float Ex: 3.14

Read Article


Learn Haskell Video Tutorials !

Computer Science

In this video you will learn how to program in Haskell!