Typage polymorphe d'un langage algorithmique

Résumé : Le typage statique avec types polymorphes, comme dans le langage ML, s'adapte parfaitement aux langages purement applicatifs, leur apportant souplesse et expressivité. Mais il ne s'étend pas naturellement au trait principal des langages algorithmiques: la modification en place des structures de données. Des difficultés de typage similaires apparaissent avec d'autres extensions des langages applicatifs: les variables logiques, la communication inter-processus à travers des canaux, et la manipulation de continuations en tant que valeurs. Ce travail étudie, dans le cadre de la sémantique relationnelle, deux nouvelles approches du typage polymorphe de ces constructions non-applicatives. La première repose sur une restriction de l'opération de généralisation des types (la notion de variables dangereuses), et sur un typage plus fin des valeurs fonctionnelles (le typage des fermetures). Le système de types obtenu reste compatible avec le noyau applicatif de ML, et se révèle être le plus expressif parmi les systèmes de types pour ML plus traits impératifs proposés jusqu'ici. La seconde approche repose sur l'adoption d'une sémantique ``par nom'' pour les constructions du polymorphisme, au lieu de la sémantique ``par valeur'' usuelle. Le langage obtenu s'écarte de ML, mais se type très simplement avec du polymorphisme. Les deux approches rendent possible l'interaction sans heurts entre les traits non-applicatifs et le typage polymorphe.
Type de document :
Thèse
Langage de programmation [cs.PL]. Université Paris 7, 1992. Français
Liste complète des métadonnées

Littérature citée [107 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/tel-01499951
Contributeur : Xavier Leroy <>
Soumis le : samedi 1 avril 2017 - 18:11:52
Dernière modification le : jeudi 26 avril 2018 - 10:28:51
Document(s) archivé(s) le : dimanche 2 juillet 2017 - 12:51:47

Identifiants

  • HAL Id : tel-01499951, version 1

Collections

Relations

  • a une version inria-00077018 - English translation / Traduction en anglais

Citation

Xavier Leroy. Typage polymorphe d'un langage algorithmique. Langage de programmation [cs.PL]. Université Paris 7, 1992. Français. 〈tel-01499951〉

Partager

Métriques

Consultations de la notice

332

Téléchargements de fichiers

149