
On Mon, 2008-05-05 at 08:16 -0400, Thomas M. DuBuisson wrote:
Errno, the Haskell encapsulation of the CInt 'errno' value, should be an instance of the commonly used type classes so higher level data structures that include it aren't bothered.
This change will break code that has custom instances for Errno, but this should be little (if any) code.
A patch is attached to the trac ticket to derive Show and Ord while Eq remains a custom instance. One could argue that, like Eq, Show and Ord should be customized to provide a identical result for all 'invalid' errno's - any thoughts on if this is necessary and what the corner case result would be?
Having it an instance of Ord and Show seems fine. If the Eq instance equates all the invalid errnos then the Ord instance should do so too because it is important that: compare a b == Eq <=> a == b Duncan