In this screencast series, we build a finite-state machine (FSM) language with guards and actions named MiniFsm as the composition of a minimalistic FSM language, and an action language.

Constructs of the action language are merged with the FSM language to open up the possibility to express guards on the transitions, and actions in the state.

The screencasts will guide you through all the steps required to engineer such a language in the Melange language workbench.

Sources

Language workbench

Modelling workbench

The sources of this example are available on GitHub