A Lightweight Approach for Defining the Formal Semantics of a Modeling Language

  • Authors:
  • Pierre Kelsen;Qin Ma

  • Affiliations:
  • Laboratory for Advanced Software Systems, University of Luxembourg, Luxembourg, L-1359;Laboratory for Advanced Software Systems, University of Luxembourg, Luxembourg, L-1359

  • Venue:
  • MoDELS '08 Proceedings of the 11th international conference on Model Driven Engineering Languages and Systems
  • Year:
  • 2008

Quantified Score

Hi-index 0.01

Visualization

Abstract

To define the formal semantics of a modeling language, one normally starts from the abstract syntax and then defines the static semantics and dynamic semantics. Having a formal semantics is important for reasoning about the language but also for building tools for the language. In this paper we propose a novel approach for this task based on the Alloy language. With the help of a concrete example language, we contrast this approach with traditional methods based on formal languages, type checking, meta-modeling and operational semantics. Although both Alloy and traditional techniques yield a formal semantics of the language, the Alloy-based approach has two key advantages: a uniform notation, and immediate automatic analyzability using the Alloy analyzer. Together with the simplicity of Alloy, our approach offers the prospect of making formal definitions easier, hopefully paving the way for a wider adoption of formal techniques in the definition of modeling languages.