GEMOC xDSML tutorial

Table of Contents

List of Figures

1. Gemoc overview and tutorial focus.

The purpose of these tutorials is to explain on simple examples with different features, how to define an eXecutable Domain Specific Modeling Language (xDSML). Based on an existing DSML definition (abstract and concrete syntaxes), we define a concurrent semantics.

Starting from an already defined languages with their own metamodel and graphical concrete syntaxes, the previous tutorials illustrate the the GEMOC approach to make a language executable and provide graphical animation for it.

The Gemoc approach aims to add execution semantics on an existing DSML definition. It consists in extending the abstract syntax (metamodel) of a DSML with several concerns:

  • the DSA --Domain Specific Actions-- defines the data dedicated to the runtime updates (Execution Data — ED) and the functions to handle these datas (Execution Functions — EF). DSA and DSML abstract syntax define the extended asbstract syntax.
  • the MoCC (Model of Concurrency and Communication) which includes the mapping definition on the extended abstract syntax and the schedule constraints of the semantics definition.
  • the DSE (Domain Specific Event): a two-way protocole between the DSA and the MoCC.
  • the animator which provides views to control and monitor the execution of the models conforming to the xDSML.

The next figure gives an overview of the architecture on an xDSML according to GEMOC.

Gemoc overview

Figure 1. Gemoc overview and tutorial focus.