[TYPES] System F and Type Generativity
Andreas Rossberg
rossberg at mpi-sws.org
Thu Sep 10 06:40:16 EDT 2009
On Sep 9, 2009, at 00.50 h, George Kuan wrote:
> ML datatypes and opaque sealing are the source of type generativity in
> the ML module system. This generativity is sometimes modeled using
> existential types. However, a more direct modeling of generativity
> would be to consider generativity as a special operator G in a variant
> of System F that takes a type expression and produces a new unique
> type unequal to all others. This would be essentially a type-level
> effect. Are there any variants of System F that include such an
> extension?
I described such a system in my PPDP'03 paper [1]. A similar type
generation construct is used in [2]. An extension of [1] with
singleton kinds appears in [3].
There also is Derek's RTG calculus [4], which targets recursive
modules and hence is more flexible, but also more complex.
A streamlined version of the system from [1], called G (sic!), is used
in our recent ICFP paper [5], and is probably the most minimalist
extension of F with type generation.
- Andreas
[1] Andreas Rossberg. Generativity and Dynamic Opacity for Abstract
Types. PPDP'03
[2] Dimitrios Vytiniotis, Geoffrey Washburn, Stephanie Weirich. An
open and shut typecase. TLDI'05
[3] Andreas Rossberg. Dynamic Translucency with Abstraction Kinds and
Higher-Order Coercions, MFPS'08
[4] Derek Dreyer. Recursive Type Generativity. JFP 17(4+5)
[5] Georg Neis, Derek Dreyer, Andreas Rossberg. Non-Parametric
Parametricity. ICFP'09.
More information about the Types-list
mailing list