Scala Internal Domain-Specific Languages for Model Manipulation.

The documentation is under construction, for more information please contact us.


Sigma, a family of internal DSLs embedded in Scala for EMF model manipulation. Currently it consists of DSLs for model consistency checking, model-to-model (M2M) and model-to-text (M2T) transformation. All these DSLs are build on a common infrastructure that provides a convenient model navigation and modification operations. It combines the benefits of external model manipulation DSLs with general-purpose programming taking full advantage of Scala versatility, performance and tool support.


Who is using Sigma



SIGMA is being developed by the MODALIS team from I3S Laboratory and SPIRALS team from INRIA Lille.

For further information, please contact:


This work has been partly funded by the ANR SALTY project under contract ANR-09-SEGI-012.


Model Navigation and Modification
The common infrastructure facilitating model navigation and modification operations.
Model Delegates
Support for implementing derived features and operation bodies directly in Scala.
Model Consistency Checking
A DSL for model consistency checking.
M2M Transformation
A DSL for model-to-model transformation.
M2T Transformation
A DSL for model-to-text transformation.
Model Workflow Orchestration
A DSL for orchestrating model manipuation workflows.