Jack Crenshaw's "Let's build a compiler!" tutorial translated into Haskell.