[Haskell-cafe] Base classes can be _ELIMINATED_ with interfaces