[Haskell-cafe] Questions about the Functor class and it's use in "Data types à la carte"