An Introductory session to Eclipse's successful language development environment. Xtext let's you build fully featured programming languages as well as simple domain specific languages (DSL). The first half of this session will give an overview of what Xtext can do for you. During the second half we will develop a DSL live and from scratch!
A well designed DSL (domain specific language) can be a huge productivity boost in many scenarios. Being it a special language for describing technical things like services or data structures or something more business oriented such as a DSL for describing complex financial products. But to make development of a custom language worthwile it must be easy to define and maintain such a DSL and of course the users must have assistance through tool support.
Xtext provides a set of APIs and DSLs to develop such DSLs easily. It not only gives you a generated parser but supports the full stack of infrastruture that is needed. This also includes editor support for Eclipse, IntelliJ and Web as well as integration with the common build tools Maven, Gradle, and Ant. Xtext is an Eclipse.org project and as such available as open-source. The framework is actively developed, very mature and widely used in industry and research.
In this session you will first get a brief introduction into the main concepts of Xtext. After that we will build a DSL from scratch.
Sven Efftinge is the project lead of Xtext, a framework for developing programming languages and domain-specific languages. Sven works as development manager for itemis.