EMFScript : Scripting méta-réflexif de modèles dans l'environnement EMF
Résumé
L'introspection de modèles est un mécanisme puissant des frameworks de modélisation existants comme EMF (Eclipse Modeling Framework) ou JMI (Java Metadata Interfaces). Cela permet à un programme de manipuler n'importe quel type de modèle en découvrant dynamiquement à l'exécution sa structure définie par son métamodèle. Ce mécanisme est un concept clé pour le développement d'environnements de modélisation génériques où les outils et les applications (moteurs de transformation, navigateur, ...) doivent être capables de manipuler tout type de modèles, de différents niveaux, sans connaissance préalable du métamodèle. Dans cette démonstration, nous proposons de présenter EMFScript un langage de manipulation de modèles EMF qui repose sur la notion de scripting méta-réflexif de modèles. Cette notion exploite l'introspection de modèles pour exposer automatiquement et dynamiquement n'importe quel (méta-)modèle au contrôle des programmes, à l'aide d'une notation compacte et de haut niveau. EMFScript peut-être mis à profit dans de nombreuses activités de l'ingénierie de modèles que nous illustrerons, comme par exemple la conception de métamodèles, le test interactif ou la composition de modèles.