[Haskell-cafe] closed classes
Duncan Coutts
duncan.coutts at worcester.oxford.ac.uk
Fri Aug 6 11:06:11 EDT 2004
On Fri, 2004-08-06 at 15:54, MR K P SCHUPKE wrote:
> class OnlyInt a
> instance OnlyInt Int
> instance Fail () => OnlyInt x
>
> Where Fail is a class with no instances, that is not exported!
>
> If you try and add an instance to OnlyInt the program will fail
> with overlapping instances.
Very nice.
However I think I still need to use allow-overlapping-instances because
[Char] and GConfPrimitiveValue a => [a] still overlap. If closes classes
were a language feature the typechecker would see that the do not
overlap since there is no instance GConfPrimitiveValue Char.
Duncan
More information about the Haskell-Cafe
mailing list