Skip to main content
  • Book
  • © 2021

Domain-Specific Languages in Practice

with JetBrains MPS

  • Provides an overview of the domain of language workbenches and shows JetBrains MPS as a sample implementation

  • Details several examples for the use of JetBrains MPS in both industrial applications and research projects

  • Includes a section on teaching and learning with MPS that discusses the sensible organization of industrial and academic courses

Buy it now

Buying options

eBook USD 129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 169.00
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access

This is a preview of subscription content, log in via an institution to check for access.

Table of contents (11 chapters)

  1. Front Matter

    Pages i-xii
  2. JetBrains MPS in Industrial Applications

    1. Front Matter

      Pages 23-23
    2. JetBrains MPS as Core DSL Technology for Developing Professional Digital Printers

      • Eugen Schindler, Hristina Moneva, Joost van Pinxten, Louis van Gool, Bart van der Meulen, Niko Stotz et al.
      Pages 53-91
    3. A Domain-Specific Language for Payroll Calculations: An Experience Report from DATEV

      • Markus Voelter, Sergej Koščejev, Marcel Riedel, Anna Deitsch, Andreas Hinkelmann
      Pages 93-130
    4. FASTEN: An Extensible Platform to Experiment with Rigorous Modeling of Safety-Critical Systems

      • Daniel Ratiu, Arne Nordmann, Peter Munk, Carmen Carlan, Markus Voelter
      Pages 131-164
  3. JetBrains MPS in Research Projects

    1. Front Matter

      Pages 195-195
    2. Projecting Textual Languages

      • Mauricio Verano Merino, Jur Bartels, Mark van den Brand, Tijs van der Storm, Eugen Schindler
      Pages 197-225
    3. Engineering Gameful Applications with MPS

      • Antonio Bucchiarone, Antonio Cicchetti, Annapaola Marconi
      Pages 227-258
    4. Learning Data Analysis with MetaR

      • Manuele Simi
      Pages 259-290
  4. Teaching and Learning with JetBrains MPS

    1. Front Matter

      Pages 291-291
    2. Teaching MPS: Experiences from Industry and Academia

      • Mikhail Barash, Václav Pech
      Pages 293-313
    3. Teaching Language Engineering Using MPS

      • Andreas Prinz
      Pages 315-336

About this book

This book covers several topics related to domain-specific language (DSL) engineering in general and how they can be handled by means of the JetBrains Meta Programming System (MPS), an open source language workbench developed by JetBrains over the last 15 years.

The book begins with an overview of the domain of language workbenches, which provides perspectives and motivations underpinning the creation of MPS. Moreover, technical details of the language underneath MPS together with the definition of the tool’s main features are discussed. The remaining ten chapters are then organized in three parts, each dedicated to a specific aspect of the topic. Part I “MPS in Industrial Applications” deals with the challenges and inadequacies of general-purpose languages used in companies, as opposed to the reasons why DSLs are essential, together with their benefits and efficiency, and summarizes lessons learnt by using MPS. Part II about “MPS in Research Projects” covers the benefits of text-based languages, the design and development of gamification applications, and research fields with generally low expertise in language engineering. Eventually, Part III focuses on “Teaching and Learning with MPS” by discussing the organization of both commercial and academic courses on MPS.

MPS is used to implement languages for real-world use. Its distinguishing feature is projectional editing, which supports practically unlimited language extension and composition possibilities as well as a flexible mix of a wide range of textual, tabular, mathematical and graphical notations. The number and diversity of the presented use-cases demonstrate the strength and malleability of the DSLs defined using MPS. The selected contributions represent the current state of the art and practice in using JetBrains MPS to implement languages for real-world applications.




Editors and Affiliations

  • Fondazione Bruno Kessler (FBK) - MoDiS, Trento, Italy

    Antonio Bucchiarone

  • School of Innovation, Design and Engineering (IDT), Mälardalen University, Västerås, Sweden

    Antonio Cicchetti, Federico Ciccozzi

  • University of L’Aquila, L’Aquila, Italy

    Alfonso Pierantonio

About the editors

Antonio Bucchiarone is a Senior Researcher in the Motivational Digital Systems (MoDiS) unit at Fondazione Bruno Kessler (FBK) in Trento, Italy. His main research interests include: Self-Adaptive (Collective) Systems, Domain Specific Languages for Socio-Technical Systems, Smart Mobility and Multi-Agent based modeling and simulation. He has been actively involved in various European research projects in the fields of Self-Adaptive Socio-Technical Systems, Smart Mobility and Service-Oriented Computing. He was the General Chair of the 12th IEEE International Conference on Self-Adaptive and Self Organizing Systems (SASO 2018) and he is an Associate Editor of the IEEE Transactions on Intelligent Transportation Systems (T-ITS) Journal, the IEEE Software Journal and the IEEE Technology and Society Magazine.

Antonio Cicchetti is Associate Professor at the IDT Department of Mälardalen University, Sweden. His research investigations cope with software engineering of complex/industrial systems, and in particular modelling languages engineering, model transformations, multi-view and multi-paradigm modelling approaches, and integration/co-evolution/synchronization problems. He has (co-)authored more than 100 publications for international journals, conferences, and workshops.

Federico Ciccozzi is Associate Professor at Mälardalen University, Sweden. His research focuses on the definition of meta-models, languages and model manipulation frameworks for the model-driven development of component-based embedded real-time systems. It also includes work in the areas of multi-paradigm and blended modelling, model versioning, (co)evolution and synchronization, and the application of model-driven and component-based techniques to complex CPS. He has (co-)authored more than 100 publications in journals and international conferences and workshops in these areas, he is associate editor of IET Software, as well as guest editor of SoSyM and JISA.

Alfonso Pierantonio is Professor at the Università degli Studi dell’Aquila (Italy). His interests are in software engineering, model-driven, and language engineering with special attention to co-evolution techniques, consistency management, and bi-directionality. He has published more than 140 articles in scientific journals and conferences and has been on the organizing committee of several international conferences, including MoDELS and STAF. Alfonso is Editor-in-Chief of the Journal of Object Technology and in the editorial and advisory board of Software and System Modeling, and Science of Computer Programming. He has been PC Chair of ECMFA 2018, General Chair of STAF 2015, and is a Steering Committee member of the ACM/IEEE MoDELS. He is a co-principal investigator of several research and industrial projects.


Bibliographic Information

  • Book Title: Domain-Specific Languages in Practice

  • Book Subtitle: with JetBrains MPS

  • Editors: Antonio Bucchiarone, Antonio Cicchetti, Federico Ciccozzi, Alfonso Pierantonio

  • DOI: https://doi.org/10.1007/978-3-030-73758-0

  • Publisher: Springer Cham

  • eBook Packages: Computer Science, Computer Science (R0)

  • Copyright Information: The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature Switzerland AG 2021

  • Hardcover ISBN: 978-3-030-73757-3Published: 25 June 2021

  • Softcover ISBN: 978-3-030-73760-3Published: 26 June 2022

  • eBook ISBN: 978-3-030-73758-0Published: 24 June 2021

  • Edition Number: 1

  • Number of Pages: XII, 336

  • Number of Illustrations: 23 b/w illustrations, 135 illustrations in colour

  • Topics: Software Engineering

Buy it now

Buying options

eBook USD 129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 169.00
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access