[Haskell-cafe] Restrictions on associated types for classes