[Haskell-cafe] Designing an object model in Haskell