[Haskell-cafe] Simulating OO programming with type classes; writing a factory fu nction