Books & Videos

Table of Contents

  1. Chapter 1 Starting Out

    1. Calling Functions

    2. Baby's First Functions

    3. An Intro to Lists

    4. Texas Ranges

    5. I'm a List Comprehension

    6. Tuples

  2. Chapter 2 Believe the Type

    1. Explicit Type Declaration

    2. Common Haskell Types

    3. Type Variables

    4. Type Classes 101

  3. Chapter 3 Syntax in Functions

    1. Pattern Matching

    2. Guards, Guards!

    3. where?!

    4. let It Be

    5. case Expressions

  4. Chapter 4 Hello Recursion!

    1. Maximum Awesome

    2. A Few More Recursive Functions

    3. Quick, Sort!

    4. Thinking Recursively

  5. Chapter 5 Higher-Order Functions

    1. Curried Functions

    2. Some Higher-Orderism Is in Order

    3. The Functional Programmer's Toolbox

    4. Lambdas

    5. I Fold You So

    6. Function Application with $

    7. Function Composition

  6. Chapter 6 Modules

    1. Importing Modules

    2. Solving Problems with Module Functions

    3. Mapping Keys to Values

    4. Making Our Own Modules

  7. Chapter 7 Making Our Own Types and Type Classes

    1. Defining a New Data Type

    2. Shaping Up

    3. Record Syntax

    4. Type Parameters

    5. Derived Instances

    6. Type Synonyms

    7. Recursive Data Structures

    8. Type Classes 102

    9. A Yes-No Type Class

    10. The Functor Type Class

    11. Kinds and Some Type-Foo

  8. Chapter 8 Input and Output

    1. Separating the Pure from the Impure

    2. Hello, World!

    3. Gluing I/O Actions Together

    4. Some Useful I/O Functions

    5. I/O Action Review

  9. Chapter 9 More Input and More Output

    1. Files and Streams

    2. Reading and Writing Files

    3. To-Do Lists

    4. Command-Line Arguments

    5. More Fun with To-Do Lists

    6. Randomness

    7. Bytestrings

  10. Chapter 10 Functionally Solving Problems

    1. Reverse Polish Notation Calculator

    2. Heathrow to London

  11. Chapter 11 Applicative Functors

    1. Functors Redux

    2. Functor Laws

    3. Using Applicative Functors

    4. Useful Functions for Applicatives

  12. Chapter 12 Monoids

    1. Wrapping an Existing Type into a New Type

    2. About Those Monoids

    3. Meet Some Monoids

    4. Folding with Monoids

  13. Chapter 13 A Fistful of Monads

    1. Upgrading Our Applicative Functors

    2. Getting Your Feet Wet with Maybe

    3. The Monad Type Class

    4. Walk the Line

    5. do Notation

    6. The List Monad

    7. Monad Laws

  14. Chapter 14 For a Few Monads More

    1. Writer? I Hardly Knew Her!

    2. Reader? Ugh, Not This Joke Again

    3. Tasteful Stateful Computations

    4. Error Error on the Wall

    5. Some Useful Monadic Functions

    6. Making a Safe RPN Calculator

    7. Composing Monadic Functions

    8. Making Monads

  15. Chapter 15 Zippers

    1. Taking a Walk

    2. Focusing on Lists

    3. A Very Simple Filesystem

    4. Watch Your Step

    5. Thanks for Reading!

  1. Appendix Updates