overlapping instances and constraints
Benjamin.Rudiak-Gould at cl.cam.ac.uk
Wed Mar 1 10:23:00 EST 2006
Niklas Broberg wrote:
> Ben Rudiak-Gould wrote:
>> Are there uses of overlapping
>> instances for which this isn't flexible enough?
Hmm... well, what about at least permitting intra-module overlap in Haskell'
(and in GHC without -foverlapping-instances)? It's good enough for many
things, and it's relatively well-behaved.
> instance (Show a) => IsXML a where
> toXML = toXML . show
> The intention of the latter is to be a default instance unless another
> instance is specified.
I can see how this is useful, but I'm surprised that it's robust. None of
the extensions people have suggested to avoid overlap would help here, clearly.
Are there uses of overlapping instances for which the single-module
restriction isn't flexible enough, but extensions that avoid overlap are
More information about the Haskell-prime