working on haskell