The Abstract State Machine (ASM) theory is a well-known formal method, which can be used to specify arbitrary algorithms, applications or even whole systems. Over the past years, there have been many approaches to implement concrete ASM-based modeling and specification languages. All of those approaches define their type systems and operator semantics differently in their internal representation, which leads to undesired or unexpected behavior during the modeling, the execution, and code generation of such ASM specifications. In this paper, we present CASM-IR, an Intermediate Representation (IR), designed to aid ASM-based language engineering which is based on a well-formed ASM-based specification format. Moreover, CASM-IR is conceptualized from the ground up to ease the formalization of ASM-based analysis and transformation passes. The feasibility of CASM-IR solving the uniform ASM representation problem is depicted. Based on our CASM-IR implementation, we were able to integrate a front-end of our statically inferred Corinthian Abstract State Machine (CASM) modeling language.
% BibTex
@inproceedings{paulweber2018abz,
title = {{CASM-IR: Uniform ASM-Based Intermediate Representation for Model Specification, Execution, and Transformation}},
author = {Paulweber, Philipp and Pescosta, Emmanuel and Zdun, Uwe},
booktitle = {6th International Conference on Abstract State Machines, Alloy, B, TLA, VDM, and Z (ABZ'18)},
series = {Lecture Notes in Computer Science (LNCS) 10817},
pages = {39--54},
year = {2018},
organization = {Springer}
}