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
