Modeling Language Variability with Reusable Language Components

被引:19
作者
Butting, Arvid [1 ]
Eikermann, Robert [1 ]
Kautz, Oliver [1 ]
Rumpe, Bernhard [1 ]
Wortmann, Andreas [1 ]
机构
[1] Rhein Westfal TH Aachen, Software Engn, Aachen, Germany
来源
SPLC'18: PROCEEDINGS OF THE 22ND INTERNATIONAL SYSTEMS AND SOFTWARE PRODUCT LINE CONFERENCE, VOL 1 | 2018年
关键词
Language Variability; Language Product Lines; Software Language Engineering; SEMANTICS;
D O I
10.1145/3233027.3233037
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Proliferation of modeling languages has produced a great variety of similar languages whose individual maintenance is challenging and costly. Reusing the syntax and semantics of modeling languages and their heterogeneous constituents, however, is rarely systematic. Current research on modeling language reuse focuses on reusing abstract syntax in form of metamodel parts. Systematic reuse of static and dynamic semantics is yet to be achieved. We present an approach to compose syntax and semantics of independently developed modeling languages through language product lines and derive new stand-alone language products. Using the MontiCore language workbench, we implemented a mechanism to compose language syntaxes and the realization of their semantics in form of template-based code generators according to language product line configurations. Leveraging variability of product lines greatly facilitates reusing modeling language and alleviates their proliferation.
引用
收藏
页码:65 / 75
页数:11
相关论文
共 40 条
[1]   Retrofitting Type-safe Interfaces into Template-based Code Generators [J].
Adam, Kai ;
Butting, Arvid ;
Kautz, Oliver ;
Pfeiffer, Jerome ;
Rumpe, Bernhard ;
Wortmann, Andreas .
PROCEEDINGS OF THE 6TH INTERNATIONAL CONFERENCE ON MODEL-DRIVEN ENGINEERING AND SOFTWARE DEVELOPMENT, 2018, :179-190
[2]  
[Anonymous], 2010, OBJECT CONSTRAINT LA
[3]  
[Anonymous], 1995, DESIGN PATTERNS ELEM
[4]  
[Anonymous], 2000, Generative Programming: Methods, Tools, and Applications
[5]  
[Anonymous], 2017, MONTICORE 5 LANGUAGE
[6]  
Bettini Lorenzo, 2016, Implementing domainspecific languages with Xtext and Xtend
[7]   Execution Framework of the GEMOC Studio (Tool Demo) [J].
Bousse, Erwan ;
Degueule, Thomas ;
Vojtisek, Didier ;
Mayerhofer, Tanja ;
Deantoni, Julien ;
Combemale, Benoit .
PROCEEDINGS OF THE 2016 ACM SIGPLAN INTERNATIONAL CONFERENCE ON SOFTWARE LANGUAGE ENGINEERING (SLE'16), 2016, :84-89
[8]   Controlled and Extensible Variability of Concrete and Abstract Syntax with Independent Language Features [J].
Butting, Arvid ;
Eikermann, Robert ;
Kautz, Oliver ;
Rumpe, Bernhard ;
Wortmann, Andreas .
TWELFTH INTERNATIONAL WORKSHOP ON VARIABILITY MODELLING OF SOFTWARE-INTENSIVE SYSTEMS (VAMOS 2018), 2017, :75-82
[9]   Concern-oriented language development (COLD): Fostering reuse in language engineering [J].
Combemale, Benoit ;
Kienzle, Jorg ;
Mussbacher, Gunter ;
Barais, Olivier ;
Bousse, Erwan ;
Cazzola, Walter ;
Collet, Philippe ;
Degueule, Thomas ;
Heinrich, Robert ;
Jezequel, Jean-Marc ;
Leduc, Manuel ;
Mayerhofer, Tanja ;
Mosser, Sebastien ;
Schottle, Matthias ;
Strittmatter, Misha ;
Wortmann, Andreas .
COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2018, 54 :139-155
[10]  
Degueule T., 2017, P MODELS 2017 WORKSH