Domain-Specific Language using the Jetbrains MetaProgramming System – Software Engineering

Domain-specific languages (DSLs) are computer programming languages of limited expressiveness, focused on a particular domain. Being able to create your own DSL is a valuable tool to have in your software engineering toolbox. From using configuration languages in your own project, and from building your internal company languages, to empowering your business users with expressive languages, DSLs are oftentimes the solution. Traditionally, the creation of a DSL was a time-consuming endeavor. Fortunately, their development has been eased with the introduction of specialized environments called language workbenches. The language workbenches ease the development of DSLs by offering meta-languages to implement the different language aspects, such as editor, code generation, constraints, type system, and so on. We will touch upon the creation of all these different meta-language aspects, and we will do so in a modern language workbench, called the Jetbrains MetaProgramming System


Ana Maria Sutii
She currently applies her knowledge on DSLs at the ING Bank in the Netherlands, where they build DSLs for the financial domain. Her study journey reflects her interest in and around DSLs. From 2007 to 2011, she followed the courses in Computer Science at the Polytechnic University of Bucharest, Romania. Her bachelor thesis was on reporting experiences with providing static single assignment form to an open source Java virtual machine implementation, Jato. After that, from 2011 to 2013, she did her master’s in the group of Mark van den Brand, software engineering, and technology, at the Technical University of Eindhoven. There, she looked at modularity in programming language grammars, and, more specifically, at modularity in GLL grammars. She then did her Ph.D. in the same group, from 2013 to 2017, under the supervision of Tom Verhoeff and Mark van den Brand. The topic of her Ph.D. was on modularization of both models and metamodels as defined in domain-specific languages (DSLs). As can be partly inferred from her studies, her interests mainly lie in DSLs, modularity, language workbenches, IDEs and model transformations.

Topic Trainer(s)
Cryptocurrencies and blockchain technology Richard Dennis
Dragon IT Security, UK
 Routing Protocols for Multi vendor IP networks  Alberto Arellano & Diego Ávila Pesantes
Escuela Superior Politécnica del Chimborazo (ESPOCH), Ecuador
Mobile robots, Automation, Control, PLC, Synchronization and Gesticulation with Social Robots  Patricio Encalada
Universidad Técnica de Ambato, Ecuador
Facial Recognition Applications based on Neuronal Networks Techniques Dario Mendoza
Universidad de las Fuerzas Armadas (ESPE), Ecuador
Introduction to data visualization with Python for big data analysis Luigi Basantes
Escuela Superior Politécnica del Litoral (ESPOL), Ecuador
Additive Manufacturing Prototype Process Lisbeth Mena
Escuela Superior Politécnica del Litoral (ESPOL), Ecuador