Rigid mixin modules. - Archive ouverte HAL Accéder directement au contenu
Rapport (Rapport De Recherche) Année : 2003

Rigid mixin modules.

(1)
1

Résumé

Mixin modules are a notion of modules that allows cross-module recursion and late binding, two features missing in ML-style modules. Unfortunately, they are easier to define in a call-by-name setting. In a call-by-value setting, mixin modules tend to conflict with the usual static restrictions on recursive definitions. Moreover, the semantics of instantiation has to specify an order of evaluation, which involves a difficult design choice. Previous proposals rely on the dependencies between components to compute a valid order of evaluation. In such systems, mixin module types must carry some information about the dependencies between their components, which makes them rather impractical. In this paper, we propose a new design for mixin modules in a call-by-value setting, which avoids this problem. The formalism we obtain is much simpler than previous notions of mixin modules, although slightly less powerful.
Les modules mixins sont une notion de modules qui permet la récursion entre modules et la liaison tardive, deux traits manquants aux modules de ML. néanmoins, leur définition est plus aisée en appel par nom. Dans un contexte d'appel par valeur, elle pose des problèmes de définitions récursives illégales et d'ordre d'évaluation au moment de l'instantiation. Des travaux précédents ont proposé de s'appuyer sur les dépendances entre définition pour calculer un ordre d’évaluation valide. Dans ces systèmes, les types de modules mixins doivent contenir de l'information sur les dépendances entre leurs composantes, ce qui les rend inadaptés.Dans ce papier, nous proposons une nouvelle définition des modules mixins en appel par valeur, qui évite ce problème. Le formalisme obtenu est beaucoup plus simple, bien que légèrement moins puissant.
Fichier principal
Vignette du fichier
RR2003-46.pdf (355.24 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-02101793 , version 1 (17-04-2019)

Identifiants

  • HAL Id : hal-02101793 , version 1

Citer

Tom Hirschowitz. Rigid mixin modules.. [Research Report] LIP RR-2003-46, Laboratoire de l'informatique du parallélisme. 2003, 2+26p. ⟨hal-02101793⟩
22 Consultations
18 Téléchargements

Partager

Gmail Facebook Twitter LinkedIn More