See First-Class Polymorphism with Existential [1] types for an overview of the 
scoping problems with existentials, and for a useful technique to augment type 
inference with a mechanism for "automatically opening" existentials, and 
propagating the required scoping. First-Class Modules for Haskell [2] uses a 
skolemization technique with a custom "open" syntax to achieve the same. Using 
existentials without some technique for eliminating the scoping problems is 
unwieldy.

Sandro

[1] http://research.microsoft.com/users/daan/download/papers/existentials.pdf
[2] http://www.cis.upenn.edu/~bcpierce/FOOL/papers9/shields.pdf

Jonathan S. Shapiro wrote:
> How difficult, conceptually, would it be to introduce existential types?
>
> How much work and complexity does it add to the inference engine?
>
> Is there a syntax that you would recommend?
>
> _______________________________________________
> bitc-dev mailing list
> [email protected]
> http://www.coyotos.org/mailman/listinfo/bitc-dev




_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to