Modeling Abstract Types in Modules with Open Existential Types
| Citations: | 8 - 0 self |
BibTeX
@MISC{Montagu_modelingabstract,
author = {Benoît Montagu and Didier Rémy},
title = {Modeling Abstract Types in Modules with Open Existential Types},
year = {}
}
OpenURL
Abstract
We propose F � , a calculus of open existential types that is an extension of System F obtained by decomposing the introduction and elimination of existential types into more atomic constructs. Open existential types model modular type abstraction as done in module systems. The static semantics of F � adapts standard techniques to deal with linearity of typing contexts, its dynamic semantics is a small-step reduction semantics that performs extrusion of type abstraction as needed during reduction, and the two are related by subject reduction and progress lemmas. Applying the Curry-Howard isomorphism, F � can be also read back as a logic with the same expressive power as second-order logic but with more modular ways of assembling partial proofs. We also extend the core calculus to handle the double vision problem as well as type-level and termlevel recursion. The resulting language turns out to be a new formalization of (a minor variant of) Dreyer’s internal language for recursive and mixin modules.







