[Haskell-cafe] Rethinking OO idioms