M, Toolchain and Language for Reusable Model Compilation

📅 2025-11-19
📈 Citations: 0
✹ Influential: 0
📄 PDF
đŸ€– AI Summary
Modeling complex concurrent and timing-sensitive systems faces challenges in multi-objective compilation (for simulation, deployment, and formal verification), weak semantic consistency across targets, and the lack of expressive, unified modeling languages. Method: This paper introduces M, a textual modeling language grounded in the Actor model and discrete-event scheduling semantics, supporting temporal/state-triggered behaviors and asynchronous message passing. We design the first reusable, multi-target model compilation framework that uses M as a unified intermediate representation to enable semantics-preserving model transformations and code generation across heterogeneous targets. Contribution/Results: M serves as a common anchor for diverse domain-specific modeling languages, significantly enhancing model reusability and toolchain interoperability. The framework provides a general-purpose compilation infrastructure for heterogeneous system development—bridging simulation, implementation, and formal verification—while ensuring end-to-end semantic fidelity across compilation targets.

Technology Category

Application Category

📝 Abstract
Complex software-driven systems often interleave distributed, concurrent computation processes with physical interactions with the environment. Developing these systems more efficiently and safely can be achieved by employing actionable, software-based models. From a high-level system model, engineers often need to derive multiple specialized models for different purposes, including simulation, deployment, and formal verification. Each of these target models usually rely on its own formalism, specification language, and execution platform. Traditionally, a compiler analyzes a program written in a programming language and generates executable code. In contrast, a model compiler processes a source model written in a modeling language and should ideally support the generation of multiple heterogeneous targets. However, most existing modeling languages are designed with a narrow focus, typically targeting only simulation or implementation. Multi-target compilation, when not considered during the language's early design, becomes significantly harder to achieve. In this paper, we introduce our initiative: a toolchain and modeling language called M, designed to support system modeling and multi-target compilation for model-driven engineering of complex, concurrent, and time-aware systems. M is a textual, grammar-driven language based on the actor model and extended with discrete-event scheduling semantics. It provides constructs for modeling system entities, message-based interactions, and time- or state-triggered reactions. From such models, M enables the systematic generation of diverse target artifacts while preserving semantic conformance to the original model. Moreover, M can serve as a middle language to which other modeling languages may anchor, thereby allowing them to benefit from its compilation framework.
Problem

Research questions and friction points this paper is trying to address.

Developing complex software systems with distributed concurrent computation and physical interactions
Generating multiple specialized models from high-level system models for different purposes
Overcoming narrow focus of existing modeling languages that target only single applications
Innovation

Methods, ideas, or system contributions that make the work stand out.

Toolchain and language for reusable model compilation
Actor-based modeling with discrete-event scheduling semantics
Systematic generation of diverse target artifacts
🔎 Similar Papers
No similar papers found.
H
H. Trinh
IDT school, MÀlardalen University, VÀsterÄs, Sweden
Federico Ciccozzi
Federico Ciccozzi
IDT school, MÀlardalen University, VÀsterÄs, Sweden
A
A. Masud
IDT school, MÀlardalen University, VÀsterÄs, Sweden
Marjan Sirjani
Marjan Sirjani
MĂ€lardalen University
Concurrency TheorySoftware EngineeringFormal MethodsModel CheckingSoftware Analysis
M
Mikael Sjodin
IDT school, MÀlardalen University, VÀsterÄs, Sweden