A Lisp interpreter in Haskell