Wed 7 Nov 2018 18:08 - 18:10 at Georgian - Poster & SRC
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.