> | 2.- In the declaration of the Eq class, (/=) has a default declaration,
> | but (==) has not. Why?
> | If (==) has also a default declaration (ie: not (x/=y)) you could choose
> | whether to define (==) or (/=) or both when declaring an instance.
> | The same applies to Ord and (<=).
>
> I don't know. It would be sensible for it to have one.
Maybe because if you defined them both, people might accidentally declare an empty
instance, rendering both functions non-terminating. Such stupid mistakes can be
hard to track down... (then again, who would declare an empty Eq??)
Frank