
| > Mmm.lhs:15:1: | > Contexts differ in length | > When matching the contexts of the signatures for | > foo :: forall (m :: * -> *). (Monad m) => Thing -> m Int | > goo :: Thing -> (Maybe Int -> Int) -> Int | > The signature contexts in a mutually recursive group should all be | > identical | > | > Poking about on the web, I got the impression that this was a known | > infelicity in ghc 6.4 (which I'm using), due to be ironed out. However, | > an early-adopting colleague with 6.6 alleges that foo-goo is still | > poisonous. | | You can compile it with 6.6 if you use -fglasgow-exts. It's not clear to | me whether this will always work, e.g. if you have higher rank types | floating around, but if it does then we should add a hint to the error; | Simon? Yes, it'll work in 6.6, and it's even documented (at the end of the section on type-system extensions). I'll add a suggestion to the error message to use -fglasgow-exts Simon