Research output: Contribution to journal › Article › peer-review
Steffen Zschaler, Erwan Bousse, Julien Deantoni, Benoit Combemale
Original language | English |
---|---|
Journal | Software and Systems Modeling |
DOIs | |
Accepted/In press | 28 Nov 2022 |
Published | 9 Jan 2023 |
Additional links |
Interactive_Exploration_of_Concurrency_Models
Interactive_Exploration_of_Concurrency_Models.pdf, 1.74 MB, application/pdf
Uploaded date:28 Nov 2022
Version:Accepted author manuscript
Licence:CC BY
Recent results in language engineering simplify the development of tool-supported executable domain-specific modeling languages (xDSMLs), including editing (e.g., completion and error checking) and execution analysis tools (e.g., debugging, monitoring and live modeling). However, such frameworks are currently limited to sequential execution traces and cannot handle execution traces resulting from an execution semantics with a concurrency model supporting parallelism or interleaving. This prevents the development of concurrency analysis tools, like debuggers supporting the exploration of model executions resulting from different interleavings. In this paper, we present a generic framework to integrate execution semantics with either implicit or explicit concurrency models, to explore the possible execution traces of conforming models, and to define strategies for helping in the exploration of the possible executions. This framework is complemented with a protocol to interact with the resulting executions and hence to build advanced concurrency analysis tools. The approach has been implemented within the GEMOC Studio. We demonstrate how to integrate two representative concurrent meta-programming approaches (MoCCML/Java and Henshin), which use different paradigms and underlying foundations to define an xDSML’s concurrency model. We also demonstrate the ability to define an advanced concurrent omniscient debugger with the proposed protocol. The paper, thus, contributes key abstractions and an associated protocol for integrating concurrent meta-programming approaches in a language workbench, and dynamically exploring the possible executions of a model in the modeling workbench.
King's College London - Homepage
© 2020 King's College London | Strand | London WC2R 2LS | England | United Kingdom | Tel +44 (0)20 7836 5454