[Haskell-cafe] Newclasses

Wvv vitea3v
Thu Oct 3 06:16:56 UTC 2013

> 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
   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.

More information about the Haskell-Cafe mailing list