λ
Reading series · 4 essays

Haskell: Abstraction by Degrees

Functions become functors, applicatives and monads—one useful abstraction at a time.

  1. 1Part 1

    Why Functions Are Values

    The first great Haskell idea: functions can be named, stored, passed around and composed like any other value.

  2. 2Part 2

    Functors Visually

    A visual and practical introduction to fmap: transform the contents while preserving the surrounding structure.

  3. 3Part 3

    Applicatives in Pictures

    From fmap to <*>: combining independent values that live inside a shared computational context.

  4. 4Part 4

    Monads Without Mysticism

    A practical visual introduction to >>=, do-notation and sequencing computations whose next step depends on the previous result.