
Malcolm Wallace
Manuel M T Chakravarty
writes: ====== Errors after type inference/checking: No default for Parsers.Token at 282:3.(1378,[(173,1432)]) No default for Parsers.Token at 254:32.(1267,[(173,1433)]) No default for Parsers.Token at 223:1.(1061,[(173,1188)]) No default for Parsers.Token at 204:25.(1180,[(173,1187)])
I don't see how this applies to my code (ie, I don't think the DMR comes in anywhere).
It is possible that the source of nhc98's difficulty is the use of existential types, e.g.
data Token t => Parser a t r = forall q. Parser (Action a t q r) (Cont a t q)
although I can't verify this hypothesis at the moment.
Hmm, ok. Unfortunately, there is no way around the existentials here.
It's fine for nhc98 to implement extensions to H98, but they should only be activated when a special command line option is given.
Indeed. However, I would point out that your code is already using extensions to Haskell'98, so you would already have had this flag switched on.
Which is why I also don't like GHC's all-extensions-or-none strategy. It is better when extensions can be enabled individually. Cheers, Manuel