Skip to Main content Skip to Navigation
Theses

Programming with first-class modules in a core language with subtyping, singleton kinds and open existential types

Résumé : Cette thèse décrit comment l'ajout de trois ingrédients à Système Fω permet d'écrire des programmes de façon modulaire dans un système explicite à la Church, tout en gardant un style proche des modules de ML. Le premier chapitre s'intéresse aux types existentiels ouverts, qui confèrent la possibilité d'utiliser des types existentiels sans restriction de portée : cela offre une plus grande flexibilité dans l'organisation des programmes. Le deuxième chapitre est consacré à l'étude des kinds singletons, qui modélisent les définitions de types : dans ce cadre, on donne une caractérisation simple de l'équivalence de types, fondée sur une relation de réduction confluente et fortement normalisante. Le dernier chapitre intègre les deux notions précédentes dans un langage noyau muni d'une relation de sous-typage : cela apporte à Fω un gain de modularité important, de niveau comparable à celui des modules de ML. Une traduction des modules vers ce langage est esquissée, permettant une comparaison précise des deux langages.
Document type :
Theses
Complete list of metadatas

Cited literature [91 references]  Display  Hide  Download

https://pastel.archives-ouvertes.fr/tel-00550331
Contributor : Benoît Montagu <>
Submitted on : Monday, December 27, 2010 - 9:34:20 AM
Last modification on : Friday, May 25, 2018 - 12:02:07 PM
Document(s) archivé(s) le : Monday, March 28, 2011 - 2:31:16 AM

Identifiers

  • HAL Id : tel-00550331, version 1

Collections

Citation

Benoît Montagu. Programming with first-class modules in a core language with subtyping, singleton kinds and open existential types. Programming Languages [cs.PL]. Ecole Polytechnique X, 2010. English. ⟨tel-00550331⟩

Share

Metrics

Record views

1360

Files downloads

486