A turing machine written in haskell