On 21/02/06, Ashley Yakeley <[EMAIL PROTECTED]> wrote: > Sebastian Sylvan wrote: > > >>Not quite the same complaint, but I've always been bothered by the > >>inconsistent use of "=>". I would prefer "A => B" to mean "if A, then > >>B". Accordingly: > >> > >> class Monad m <= MonadPlus m > > > > > > By your definition, couldn't what we have now (class Monad m => > > MonadPlus m) be read as "If m is in the Monad class, then the class > > MonadPlus can be defined for m thusly:...", which seems pretty clear > > to me. > > Not to me. It's like saying "If f is a piece of furniture, then the set > of chairs can be defined for f thusly", which seems equally unclear to me. > > If m is in the Monad class... then what? It's not necessarily in the > MonadPlus class. No useful inference can be drawn this way. What we mean > to say instead is "if m is in the MonadPlus class, then it is in the > Monad class".
I can see both points of view here. I think what Sebastian was trying to say is that it means something along the lines of: "If m is a Monad, then m is a MonadPlus provided that the following are implemented." which is a sensible interpretation. Either way would work. - Cale _______________________________________________ Haskell-prime mailing list Haskell-prime@haskell.org http://haskell.org/mailman/listinfo/haskell-prime