Haskell Workshop

Work in progress (Chris Reade and Phil Molyneux)

Contents

Background

  1. Why functional programming?
  2. About the workshop

Flowgraphs

Unit 1: Basic Concepts

  1. Expressions and definitions
  2. Defining new functions
  3. Tuples and infix operators
  4. Further primitives and values
  5. Exercises

Booklet Example

Unit 2: Lists and Recursion

  1. Polymorphism
  2. Introducing Lists
  3. Pattern Matching Definitions for Lists
  4. Exercises
  5. Longer Exercises
  6. List Sorting
  7. Accumulating Parameters and Tail Recursion

Timetable Example

Unit 3: New Types

  1. Algebraic (Concrete) Types
  2. Trees

Slides on Advanced Topics

in PDF

Example IO (exampleIO.hs)

Unit 4: Abstract Types and Modules

  1. Sets
  2. Character Pictures
  3. Game of Life
  4. Generations Exercises
  5. Longer Exercises
  6. List Sorting
  7. Accumulating Parameters and Tail Recursion

Graphpic (Graphical Pictures)

Turtle Graphics Exercise


Sources