Transcript Slide 1
Automaton-Based Approach for
Defining Dynamic Semantics of DSLs
Ulyana Tikhonova
[email protected]
St. Petersburg State Polytechnical University, Russia
Eindhoven University of Technology, The Netherlands
Supervisors:
Suzana Andova, Mark van den Brand, Fedor A. Novikov
1
GTTSE-SLE-SW
22.06.2011
Motivation
Domain-Specific Language
A DSL captures the domain knowledge
Design, implementation and maintenance of a DSL
Model Driven Engineering:
DSL metamodel
programming languages
verification languages
simulation models
Dynamic semantics
2
Mapping of the DSL metamodel to the execution behavior
Target-independent formal specification
GTTSE-SLE-SW
22.06.2011
Automaton-based approach (1/2)
Executable dynamic semantics specification
Using notation of the UML state machine diagrams
The AutoLanD DSL: executable UML for automata
An automaton is an interacting object:
3
Provided interfaces: triggers and current state
Required interfaces: effects and guards
22.06.2011
Automaton-based approach (2/2)
4
GTTSE-SLE-SW
22.06.2011
5
GTTSE-SLE-SW
22.06.2011
Implementation: Eclipse Modeling Framework
(EMF) + Xpand
M2T
6
Specification: Structural Operational Semantics
(SOS)
7
GTTSE-SLE-SW
22.06.2011
Specification = Implementation: AutoLanD
(bootstrapping)
8
GTTSE-SLE-SW
22.06.2011
Conclusions and future work
Code generation : rapid implementation + testing
SOS : understanding of the core semantics +
reconsidering a DSL design
AutoLanD
9
Executability Accurate defining of all details
High abstraction level
Visual notation of UML state machine diagrams
Verification of automata based on SOS specification
Another case study
GTTSE-SLE-SW
22.06.2011
Open questions
Bootstrapping test
Execute Set DSL automata for a model
Execute AutoLanD automata for Set DSL automata for a model
comparison: measurement ??
Xtext failure
10
GTTSE-SLE-SW
22.06.2011