JUCS - Journal of Universal Computer Science 7(11): 1068-1087, doi: 10.3217/jucs-007-11-1068
Compiling Abstract State Machines to C++
expand article infoJoachim Schmid
‡ Siemens Corporate Technology, Munich, Germany
Open Access
Abstract
Abstract State Machines (ASMs) have been widely used to specify soft-ware and hardware systems. Only a few of these specifications are executable, although there are several interpreters and some compilers. This paper introduces a compilation scheme to transform an ASM specification in the syntax of the ASM-Workbench into C++. In particular, we transform algebraic types, pattern matching, functional expressions, dynamic functions, and simultaneous updates to C++ code. The main aim of this compilation scheme is to preserve the specification structure in the generated code without generating inefficient code. The implemented compiler was used successfully in the industrial FALKO application at Siemens Corporate Technology.
Keywords
abstract state machines, ASM-Workbench, FALKO