Haskell Implementation of problems in the Elements of Programming Interviews