[Haskell-beginners] Type classes vs Java interfaces