
22 Feb
2006
22 Feb
'06
2:12 a.m.
Claus Reinke wrote:
class Monad m => MonadPlus m if <..oops..>
if Monad m, then declare MonadPlus m as follows..
This gloss doesn't make sense. The act of declaration is a constant static property of the module, and cannot be conditional on the property of a variable. The module _always_ declares the class. A sensible gloss should begin "Declare MonadPlus to be a class on m such that (Monad m) and..." with the understanding that "m" is quantified by "Declare MonadPlus to be a class on m". -- Ashley Yakeley