my haskell code.