> Your first two cases will be fixed in 7.10, as Applicative finally becomes a superclass of Monad.
Sure, newclassses not about Applicative and Monads only. This question is more wider. Must Apply be a superclass of Bind? Must Bind be a superclass of Monad? So, must Monad has 2 superclasses at once: Bind and Applicative? Must Semigroupoids be a superclass of Category? Must Category be a superclass of Arrow? With newclasses we could write empty instances to provide correct functional dependencies: instance ArrCategory MyArrow instance CatSemigroupoids MyCategory instance MBind MyMonad instance MApply MyMonad instance MApplicative MyMonad instance MFunctor MyMonad > Also, I don't see why it would be a misfeature to have Eq as a superclass > of Ord, or Functor as a superclass of Applicative. I see 2 reasons: 1) class functions in reality don't depend of superclass functions 2) Haskell can't check if superclass instance is correspond with class laws -- View this message in context: http://haskell.1045720.n5.nabble.com/Newclasses-tp5737596p5737625.html Sent from the Haskell - Haskell-Cafe mailing list archive at Nabble.com. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe