Domain-level Debugging for Compiled DSLs with the GEMOC Studio

Erwan Bousse, Tanja Mayerhofer, Manuel Wimmer
2017 ACM/IEEE International Conference on Model Driven Engineering Languages and Systems  
Executable Domain-Specific Languages (DSLs) are commonly defined with either operational semantics (i.e., interpretation) or translational semantics (i.e., compilation). An interpreted DSL relies on domain concepts to specify the possible execution states and steps of conforming models, which facilitates the observation and control of the execution using the very same domain concepts. In contrast, a compiled DSL relies on a transformation to an arbitrarily different executable target language,
more » ... hich creates a conceptual and technical gap between the considered domain and the target domain. In this tool demonstration paper, we present the implementation of our approach to supplement a compiled DSL with a feedback manager, which during execution translates execution steps and states of the target model back to the source domain. This enables the development and use of tools such as an omniscient debugger and a trace constructor for debugging compiled models. Our implementation was achieved for the GEMOC Studio, a language and modeling workbench that provides generic model debugging tools for interpreted DSLs. With our approach, these debugging tools can be also used for compiled DSLs. Our demonstration features the definition of a feedback manager for a subset of fUML that compiles to Petri nets.
dblp:conf/models/BousseMW17 fatcat:vhtkmnatofgnfgc7li6xb72prm