Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Semantics for DSL Group Members: Ritu Arora, Diyang Chu, Zekai Demirezen, Jeff Gray, Jacob Gulotta, Luis Pedro, Arturo Sanchez, Greg Sullivan,Ximing Yu."— Presentation transcript:

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 – ATOM 3 (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 M3 M2 M1 myDSL Metamodel myDSL.dsl EBNF myDSL.g Grammar myDSL Model KM3 myDSL Technical Space Model-Driven Engineering Technical Space FSMDSL Metamodel FSMDSL.g Grammar FSM.fsmdsl Extraction Injection Legend: M1 = Terminal model level M2 = Metamodel level M3 = Meta- metamodel level Anchor FSM Technical Space myDSL to FSMDSL Transformation Conforms to FSMDSL Model Operational Semantics


Download ppt "Semantics for DSL Group Members: Ritu Arora, Diyang Chu, Zekai Demirezen, Jeff Gray, Jacob Gulotta, Luis Pedro, Arturo Sanchez, Greg Sullivan,Ximing Yu."

Similar presentations


Ads by Google