Isaac Dupree wrote: > In class Integral, divMod has a default in terms of quotRem. > (quot,rem,div,mod all have defaults as the both-function they're part > of.) I'm sure divMod is more natural than quotRem to implement for some > types... so why doesn't quotRem have a default in terms of divMod? it > has no default! Then the "minimal to implement" will change from > (toInteger and quotRem) to (toInteger and (quotRem or divMod)). > > Isaac
while I don't care if quotRem or divMod should be implemented. I oppose to give both default implementations in terms of the other. Already for the class Eq either == or /= must be defined, with the unpleasant effect that an empty instance like: instance Eq T leads to a loop (when == or /= is called on elements of type T). The empty instance does not even raise a warning about unimplemented methods (since the default definition is used). I'd rather prefer to remove /= as method of Eq. Cheers Christian _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe