Stage Master Recherche en Informatique --- 2011-2012
Etude préliminaire d'une machine virtuelle en héritage multiple et typage statique

Encadrants : Roland Ducournau

Lieu : LIRMM/INFO/DOC

Présentation du problème et  Objectif du stage

Dans le cadre des recherches sur les techniques d'implémentations des langages à objets et le langage PRM (thèses de Jean Privat et de Floréal Morandat) nous avons développé une technique d'implémentation basée sur le hachage parfait.
Les tests réalisés sur le compilateur PRM montrent que cette technique donne de très bon résultats pour le test de sous-typage et l'invocation de méthodes.
Comme elle est aussi compatible avec l'hypothèse du monde ouvert et le chargement dynamique, c'est une technique qui devrait donner de bons résultats pour l'implémentation des interfaces en Java, mais son usage dans la machine virtuelle d'un langage en héritage multiple est plus problématique. Cependant une première simulation a donné des résultats assez satisfaisants.

L'objectif du présent stage est de réaliser un certain nombre d'études préliminaires pour démontrer la faisabilité d'une machine virtuelle et d'un compilateur JIT pour un langage en héritage multiple :
Tout n'est pas faisable dans la durée d'un stage et il s'agira de sélectionner 2 ou 3 points.

Le stage pourra vraisemblablement donner lieu à une poursuite en thèse dans le cadre du projet PRM.

Références de l'équipe

  1. R. Ducournau.
    Implementing statically typed object-oriented programming languages.
    ACM Computing Surveys, to appear in 2009, (pdf file)

  2. R. Ducournau.
    Perfect hashing as an almost perfect subtype test.
    ACM Transactions on Programming Languages and Systems,  30(6), 2008 (56p) (pdf file, doi)

  3. R. Ducournau, F. Morandat, J. Privat.
    Empirical assessment of object-oriented implementations with multiple inheritance and static typing.
    In Proc. OOPSLA'09. ACM Press, 2009.

  4. R. Ducournau, J. Privat.
    Meta-Modeling Semantics of Multiple Inheritance
    Science of Computing Programming, 40 pages ( pdf file)
    doi: 10.1016/j.scico.2010.10.006

  5. R. Ducournau, F. Morandat.
    Perfect class hashing and numbering for object-oriented implementation
    Software Practice & Experience, 32 pages, John Wiley & Sons, 2011
    doi: 10.1002/spe.1024

  6. R. Ducournau, F. Morandat.
    Towards a full multiple inheritance virtual machine.
    MASPEGHI/ICOOOLPS workshop at ECOOP'2010. (slides .pdf files)

Voir aussi le site du langage PRM.

Références sur des machines virtuelles