Some haskell changes