|
|
DSLs with Eclipse Modeling
Domain-specific languages (DSLs) are a popular technique in software to eliminate redundancy, reduce syntactic noise, separate concerns and introduce abstractions the target language cannot offer. In this tutorial we present a complete chain of Eclipse Modeling tools to define, process and execute external DSLs. We start with the definition of the abstract and the concrete textual syntax using an Xtext grammar. From that, we use Xtext to automatically create a DSL workbench, including an Ecore model for the abstract syntax, a parser and a text editor with syntax highlighting code completion and navigation. We show how to customize the editor and use it to define models. Finally, we orchestrate the model processing components with MWE and write code-generation templates in Xpand to generate artifacts for our target platform. The participants will be introduced to the fundamentals of all these technologies and gather hands-on experience. They will learn how easy working with DSLs can be and how well it fits into modern agile software development.
|