> But that would break existing programs. You would need a language
> extension so the feature could be selectively enabled.

Yes. Which means I think that you cannot support a closed world, as
given by that simple defining rule, without a language extension.

The root of the question seems to be what "closed world" means with
"when resolving instances" / "at the last possible moment" (if it it
was "at the last stage at global level in a compilation unit" then "g"
would have type Int->Int). In my view without that simple defining
rule it is difficult to come up with a proposal that is simple, sound
and gives principal typings (well, with it is already difficult...:-).

Cheers,

Carlos


_______________________________________________
Haskell-Cafe mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to