Modeling abstract types in modules with open existential types

Symposium on Principles of Programming Languages(2009)

引用 30|浏览19
暂无评分
摘要
We propose F-zip, 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-zip 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-zip 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 term-level 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.
更多
查看译文
关键词
generativity,dynamic semantics,abstract types,existential types,modular type abstraction,core calculus,open existential type,linear type systems,type systems,lambda-calculus,subject reduction,small-step reduction semantics,modularity,abstract type,internal language,static semantics,modules,existential type,open existential types model,languages,expressive power,lambda calculus,type system,second order,design
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要