Print Email Facebook Twitter Lessons learned from developing mbeddr Title Lessons learned from developing mbeddr: a case study in language engineering with MPS Author Völter, Markus (Itemis AG) Kolb, Bernd (Itemis AG) Szabo, T. (TU Delft Programming Languages; Itemis AG) Ratiu, Daniel (Siemens AG) van Deursen, A. (TU Delft Software Technology) Department Software Technology Date 2019 Abstract Language workbenches are touted as a promising technology to engineer languages for use in a wide range of domains, from programming to science to business. However, not many real-world case studies exist that evaluate the suitability of language workbench technology for this task. This paper contains such a case study. In particular, we evaluate the development of mbeddr, a collection of integrated languages and language extensions built with the Jetbrains MPS language workbench. mbeddr consists of 81 languages, with their IDE support, 34 of them C extensions. The mbeddr languages use a wide variety of notations---textual, tabular, symbolic and graphical---and the C extensions are modular; new extensions can be added without changing the existing implementation of C. mbeddr's development has spanned 10 person-years so far, and the tool is used in practice and continues to be developed. This makes mbeddr a meaningful case study of non-trivial size and complexity. The evaluation is centered around five research questions: language modularity, notational freedom and projectional editing, mechanisms for managing complexity, performance and scalability issues and the consequences for the development process. We draw generally positive conclusions; language engineering with MPS is ready for real-world use. However, we also identify a number of areas for improvement in the state of the art in language engineering in general, and in MPS in particular. Subject Language engineeringLanguage extensionLanguage workbenchesDomain-specific languageCase studyLanguagesExperimentation To reference this document use: http://resolver.tudelft.nl/uuid:6fcaa1db-7e3a-4546-8329-1cc69901df7e DOI https://doi.org/10.1007/s10270-016-0575-4 Embargo date 2019-03-01 ISSN 1619-1374 Source Software and Systems Modeling, 18 (1), 585-630 Part of collection Institutional Repository Document type journal article Rights © 2019 Markus Völter, Bernd Kolb, T. Szabo, Daniel Ratiu, A. van Deursen Files PDF TUD_SERG_2016_025.pdf 1.72 MB Close viewer /islandora/object/uuid:6fcaa1db-7e3a-4546-8329-1cc69901df7e/datastream/OBJ/view