Exercises from SICP in Haskell