more undecidable instances, but why
Hal Daume III
hdaume@ISI.EDU
Fri, 18 Oct 2002 10:06:23 -0700 (PDT)
I'm being hit by undecidable instances, but I can't see why. I read and
reread the GHC docs on MPTCs, but to no avail. This is what I'm trying to
do:
newtype S a = S a
instance MArray IOUArray a IO => MArray IOUArray (S a) IO where
...
the instance declaration is basically just wrapping/unwrapping S and a few
castIOArrays.
However, GHC complains:
/nfs/isd/hdaume/projects/MESumm/Linear2/Linear2.hs:76:
Non-type variables in constraint: MArray IOUArray a IO
(Use -fallow-undecidable-instances to permit this)
In the context: (MArray IOUArray a IO)
While checking the context of an instance declaration
In the instance declaration for `MArray IOUArray (S a) IO'
But I don't see why this is undecidable. As I understand it, undecidable
instances basically arise when context reduction might not
terminate. Here, it always will (AFAICS).
Any thoughts?
- Hal