A simple imperative language interpreter/compiler made in Haskell