haskell p37