Semantics for DSL - PowerPoint PPT Presentation

About This Presentation
Title:

Semantics for DSL

Description:

Proving properties of a GPL is challenging, but should be easier ... properties ... OCL to define pre and post conditions. Used for simulation purposes ... – PowerPoint PPT presentation

Number of Views:34
Avg rating:3.0/5.0
Slides: 10
Provided by: ritu2
Learn more at: http://www.dsmforum.org
Category:
Tags: dsl | semantics

less

Transcript and Presenter's Notes

Title: Semantics for DSL


1
Semantics for DSL
  • Group Members
  • Ritu Arora, Diyang Chu, Zekai Demirezen, Jeff
    Gray, Jacob Gulotta, Luis Pedro, Arturo Sanchez,
    Greg Sullivan,Ximing Yu

2
What do semantics mean for a modeling language?
  • The details about the concepts that are in the
    mind of the domain-experts should be written
    formally.
  • The semantics represent the meaning of the
    phrases and sentences that the domain expert may
    express.
  • Box Represents a State? Class? Foo?

3
Why do we want a clear and precise representation
of model semantics?
  • A clean formalism enables reasoning about desired
    properties
  • Analysis
  • deadlock analysis
  • ambiguity?
  • consistency?
  • Generation of associated tools from the semantics
    definition
  • Code generators
  • Debugging tools
  • Test cases
  • Visualization of execution/animation

4
How to define the semantics for DSL?
  • The state of the art represents model semantics
    at a low-level
  • Defined in model interpreters
  • Emerging approaches

5
Domain-Specific Semantics
  • Are the semantics of the DSL actually
    domain-specific?
  • Lack of a standard for defining semantics for
    DSLs
  • The notion of static semantics is easy and
    already defined in many tools dynamic semantics
    represent the clear challenge
  • Proving properties of a GPL is challenging, but
    should be easier for DSLs (e.g., behavioral
    preservation of transformations, ambiguity)
  • Domain-specific properties
  • would be helpful if semantics are defined in a
    formal, declarative language

6
Concerns for defining DSLs
  • Concern
  • separate syntax semantics
  • define roles (language engineer, end-user)
  • define appropriate semantic domain
  • Document object model
  • Abstract state machine

7
Current Approaches 1
  • Graph rewriting
  • ATOM3 (multi -formalism approach)
  • Any thing that can be defined as a model can be
    used as a meta-model
  • Subset of Python, OCL to define pre and post
    conditions
  • Used for simulation purposes
  • Combine Syntax and Semantic definition formalisms
    in one language.
  • Kermeta
  • Extends EMOF to enable behavior definitions of
    meta-elements

8
Current Approaches 2
  • Semantic Anchoring through transformation
  • Mapping meta elements in to semantic elements in
    another formalism with well-defined semantics
  • Example
  • Finite State Machine can be used along to define
    the semantics of the DSL
  • Transformation view on the next slide

9
Operational Semantics
Model-Driven Engineering Technical Space
Anchor FSM Technical Space
myDSL Technical Space
Conforms to
Conforms to
Conforms to
M3
EBNF
EBNF
KM3
Conforms to
Conforms to
myDSL.gGrammar
myDSL Metamodel
FSMDSL Metamodel
FSMDSL.g Grammar
M2
Conforms to
Conforms to
myDSL to FSMDSL Transformation
Injection
myDSL Model
FSMDSL Model
FSM.fsmdsl
myDSL.dsl
Extraction
M1
Legend M1 Terminal model level M2 Metamodel
level M3 Meta- metamodel level
Write a Comment
User Comments (0)
About PowerShow.com