The goal of modular language development is to enable the definition of new languages as assemblies of preexisting ones. Recent approaches in this area are plentiful but usually suffer from two main problems: either they do not support modular language composition both at the specification and implementation levels, or they require advanced knowledge of specific paradigm that hampers wide adoption in the industry. In this paper, we introduce a lightweight approach to modular development of language concerns with well-defined interfaces that can be composed modularly at the specification and implementation levels. We present an implementation of our approach atop the Eclipse Modeling Framework, namely Alex — an object-oriented meta-language for semantics definition and language composition. We evaluate Alex in the development of a new DSL for IoT systems modeling resulting from the composition of three independently defined languages (UML activity diagrams, Lua, and the CORBA Interface Description Language). We evaluate the effort required to implement and compose these languages using Alex with regards to similar approaches of the literature.
Mon 5 NovDisplayed time zone: Guadalajara, Mexico City, Monterrey change
13:30 - 15:00 | |||
13:30 20mTalk | Input-Driven Regular Expressions (Vision Paper)Vision / New Idea SLE 2018 Alexander Sakharov Synstretch | ||
13:50 30mTalk | Modular Language Composition for the Masses SLE 2018 Manuel Leduc Univ Rennes, Inria, CNRS, IRISA, Thomas Degueule Centrum Wiskunde & Informatica, Benoit Combemale University of Rennes 1 DOI Pre-print | ||
14:20 20mTalk | Storm: A Language Platform for Interacting and Extensible Languages (Tool Demo)Tool Demo SLE 2018 Filip Strömbäck Linköping University DOI | ||
14:40 20mTalk | Languages as First-Class Citizens (Vision Paper)Vision / New Idea SLE 2018 Matteo Cimini University of Massachusetts Lowell |