A Scheme compiler written in Haskell