Slides of Eclipse Modeling Day in New York and Toronto http://wiki.eclipse.org/Eclipse_Modeling_Day
Motivation of specific tools with apple corer analogy, Example of domain-specific language (chess notation), introduction to Xtext with demo plus outlook
20. Domain-Specific Language (DSL)
A DSL is a formal, processable language
targeting at a specific viewpoint or
aspect of a software system.
Its semantics, flexibility and notation is
designed in order to support working
with that viewpoint as good as possible.
22. “ Queen to c7.
Check.”
“ Rd2-c2 ,
”
rook at d2 moves to c2.
23. Moves in Chess:
!ook at a1 moves to a5.
P
iece S q uare A
ction
De stin ation
"ishop at c8 captures knight at h3.
P
iece S q uare ion
Action
D
es tinat
# b1 x c3
Piece S qua re ction stination
AD e
$2 - g4
ation
S A D
quar
e ction e stin
28. Xtext is a complete environment
for development of textual
- programming languages and
- domain-specific languages.
It is implemented in Java and is
based on Eclipse, EMF, and Antlr.
29. ar
Model
m
m
ra
G
Generator
Runtime
Superclass
Subclass Class
LL(*) Parser ecore meta model editor
36. from FlightBookings F, CarBookings C, HotelBookings H
matching [24 hours: F, C, H ]
on F.name = C.name = H.name
select F.name, true bookingWithCar,
into TripleBookings
from FlightBookings F, CarBookings C, HotelBookings H
matching [24 hours: F, !C, H ]
on F.name = C.name = H.name
select F.name, false bookingWithCar
into TripleBookings
from TripleBookings
where prev(bookingWithCar) and not bookingWithCar
select name
into LostCustomers
65. twitter @HBehrens
blog http://HeikoBehrens.net
mail Heiko.Behrens@itemis.de
xing http://www.xing.com/profile/Heiko_Behrens
linkedin http://www.linkedin.com/in/HeikoBehrens
www.xtext.org
The Committer Team twitter @Xtext
Heiko Michael Sven Moritz Peter Dennis Jan Patrick Knut Sebastian
Behrens Clay Efftinge Eysholdt Friese Hübner Köhnlein Schönbach Wannheden Zarnekow