Stepping through Haskell by A. Dijkstra