[bitc-dev] Opaque (Abstract?) types

Swaroop Sridhar swaroop at cs.jhu.edu
Fri Jan 25 19:22:18 EST 2008


Sandro Magi wrote:
> 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.

1) My understanding is that the proposal was to introduce existential
types only, without adding first class polymorphism.

2) My consideration (of a possible implementation) was to achieve
scoping through an explicit match construct, with pattern instantiations
implemented through skolem constructors as in the case of existential
types in Ocaml-light:

http://hal.inria.fr/docs/00/07/44/88/PDF/RR-2183.pdf

Swaroop.



More information about the bitc-dev mailing list