Javascript must be enabled to continue!
Boostrap-Based Language Development : Turning an existing VM into a polygot VM
View through CrossRef
Les langages de programmation doivent évoluer au fur et à mesure que les exigences des logiciels changent, mais leur prototypage et leur extension se font au prix de grands efforts de développement. Les langages réflectifs, qui sont capables de modifier leur propre sémantique, offrent une approche de haut niveau pour l’implémentation des langages. Bien que facile à utiliser, l’approche réflexive ne peut produire qu’une gamme limitée de langages, car les modifications apportées aux éléments centraux du système peuvent briser les références circulaires et laisser le système dans un état incohérent. Pour surmonter cette limitation, l’architecture du noyau du système doit être reconstruite avec un processus d’amorçage (bootstrap). Cette technique s’est avérée efficace pour produire une famille de langages similaires. Cependant, l’adaptation d’une implémentation de bootstrap existante pour générer de nouveaux langages est un défi. Cette difficulté est due à une manque d’abstractions appropriées pour la spécification des langages et, comme pour d’autres techniques, à une manifestation tardive des erreurs avec des sauts d’abstraction pendant les tâches de débogage.Dans cette thèse, nous étudions la conception d’une technique de développement de langages basée sur le bootstrap qui permet de générer plusieurs langages avec peu d’effort. Pour cela, nous introduisons MetaL, un cadriciel d’amorçage où la spécification du langage est basée sur des métamodèles et des instructions d’initialisation réflectives de haut niveau. Un Meta-Object Protocol (MOP) réifie les contraintes de la machine virtuelle (VM) et assure un niveau d’abstraction élevé, fournissant des opérations pour construire un modèle de langage et ensuite un noyau. Notre MOP garantit la correction du modèle par construction et assure la cohérence du noyau, en détectant la corruption au début du processus de génération.Pour valider notre approche, nous rapportons la génération réussie de sept noyaux de langages orientés objet, ainsi qu’une expérience par un utilisateur externe. Ces expériences montrent que MetaL : (i) supprime le besoin d’expertise sur la VM (ii), réduit le fossé d’abstraction dans les tâches de débogage, (iii) est perçu positivement comme répondant au besoin de solutions d’amorçage faciles à utiliser, (iv) est applicable dans des scénarios du monde réel. Néanmoins, cette expérience montre également que l’utilisation du métamodèle pour la spécification du langage entrave la réutilisation du code, car l’implémentation d’une fonctionnalité sémantique est répartie sur plusieurs classe du métamodèle. Pour résoudre cette limitation, nous proposons AspectMetaL, une couche orientée aspect (POA) au-dessus de MetaL qui permet de spécifier un langage au niveau des fonctionnalités sémantiques. Pour valider AspectMetaL, nous avons généré 3 noyaux en combinant des caractéristiques sémantiques prédéfinies et personnalisées. Nous avons ainsi pu montrer que la POA est efficace pour améliorer la réutilisation du code et augmenter le niveau d’abstraction pour la spécification du langage.
Title: Boostrap-Based Language Development : Turning an existing VM into a polygot VM
Description:
Les langages de programmation doivent évoluer au fur et à mesure que les exigences des logiciels changent, mais leur prototypage et leur extension se font au prix de grands efforts de développement.
Les langages réflectifs, qui sont capables de modifier leur propre sémantique, offrent une approche de haut niveau pour l’implémentation des langages.
Bien que facile à utiliser, l’approche réflexive ne peut produire qu’une gamme limitée de langages, car les modifications apportées aux éléments centraux du système peuvent briser les références circulaires et laisser le système dans un état incohérent.
Pour surmonter cette limitation, l’architecture du noyau du système doit être reconstruite avec un processus d’amorçage (bootstrap).
Cette technique s’est avérée efficace pour produire une famille de langages similaires.
Cependant, l’adaptation d’une implémentation de bootstrap existante pour générer de nouveaux langages est un défi.
Cette difficulté est due à une manque d’abstractions appropriées pour la spécification des langages et, comme pour d’autres techniques, à une manifestation tardive des erreurs avec des sauts d’abstraction pendant les tâches de débogage.
Dans cette thèse, nous étudions la conception d’une technique de développement de langages basée sur le bootstrap qui permet de générer plusieurs langages avec peu d’effort.
Pour cela, nous introduisons MetaL, un cadriciel d’amorçage où la spécification du langage est basée sur des métamodèles et des instructions d’initialisation réflectives de haut niveau.
Un Meta-Object Protocol (MOP) réifie les contraintes de la machine virtuelle (VM) et assure un niveau d’abstraction élevé, fournissant des opérations pour construire un modèle de langage et ensuite un noyau.
Notre MOP garantit la correction du modèle par construction et assure la cohérence du noyau, en détectant la corruption au début du processus de génération.
Pour valider notre approche, nous rapportons la génération réussie de sept noyaux de langages orientés objet, ainsi qu’une expérience par un utilisateur externe.
Ces expériences montrent que MetaL : (i) supprime le besoin d’expertise sur la VM (ii), réduit le fossé d’abstraction dans les tâches de débogage, (iii) est perçu positivement comme répondant au besoin de solutions d’amorçage faciles à utiliser, (iv) est applicable dans des scénarios du monde réel.
Néanmoins, cette expérience montre également que l’utilisation du métamodèle pour la spécification du langage entrave la réutilisation du code, car l’implémentation d’une fonctionnalité sémantique est répartie sur plusieurs classe du métamodèle.
Pour résoudre cette limitation, nous proposons AspectMetaL, une couche orientée aspect (POA) au-dessus de MetaL qui permet de spécifier un langage au niveau des fonctionnalités sémantiques.
Pour valider AspectMetaL, nous avons généré 3 noyaux en combinant des caractéristiques sémantiques prédéfinies et personnalisées.
Nous avons ainsi pu montrer que la POA est efficace pour améliorer la réutilisation du code et augmenter le niveau d’abstraction pour la spécification du langage.
Related Results
Hubungan Perilaku Pola Makan dengan Kejadian Anak Obesitas
Hubungan Perilaku Pola Makan dengan Kejadian Anak Obesitas
<p><em><span style="font-size: 11.0pt; font-family: 'Times New Roman',serif; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-langua...
Increased life expectancy of heart failure patients in a rural center by a multidisciplinary program
Increased life expectancy of heart failure patients in a rural center by a multidisciplinary program
Abstract
Funding Acknowledgements
Type of funding sources: None.
INTRODUCTION Patients with heart failure (HF)...
Effects of multi-pass turning on surface properties of AISI 52100 bearing steel
Effects of multi-pass turning on surface properties of AISI 52100 bearing steel
Abstract
Hard turning is extensively used in the machining of bearings. The turning process has a significant influence on the properties of machined surface. In this paper...
A Wideband mm-Wave Printed Dipole Antenna for 5G Applications
A Wideband mm-Wave Printed Dipole Antenna for 5G Applications
<span lang="EN-MY">In this paper, a wideband millimeter-wave (mm-Wave) printed dipole antenna is proposed to be used for fifth generation (5G) communications. The single elem...
Visual Cues for Turning in Parkinson’s Disease
Visual Cues for Turning in Parkinson’s Disease
Turning is a common impairment of mobility in people with Parkinson’s disease (PD), which increases freezing of gait (FoG) episodes and has implications for falls risk. Visual cues...
Aviation English - A global perspective: analysis, teaching, assessment
Aviation English - A global perspective: analysis, teaching, assessment
This e-book brings together 13 chapters written by aviation English researchers and practitioners settled in six different countries, representing institutions and universities fro...
ADVANCES IN ULTRAPRECISION DIAMOND TURNING: TECHNIQUES, APPLICATIONS, AND FUTURE TRENDS
ADVANCES IN ULTRAPRECISION DIAMOND TURNING: TECHNIQUES, APPLICATIONS, AND FUTURE TRENDS
Advances in ultraprecision diamond turning have revolutionized manufacturing processes across various industries, offering unparalleled precision and surface quality in the fabrica...
Language Ecology
Language Ecology
Norwegian scholar Einar Haugen proposed language ecology to study how languages historically present in a land or social setting interact with languages that arrive in this setting...

