Gold sponsors

IBM Corporation

Jasmine Conseil logo

Cloudsoft logo

Sonatype logo

SAP logo

Xored logo


Amazon logo

Silver sponsors

Blackberry logo

ZeroTurnaround logo

Amazon Web Services logo

bsi logo

OnPositive logo


Nuxeo logo


Bronze sponsors



Microsoft logo

Paremus logo

JBoss logo

Genuitec logo

Juniper logo

Soyatec logo

itemis logo

Totvs logo

AccuRev logo

Activity sponsor


Media sponsors

Methods & Tools logo

Pragmatic DSL Design with Xtext, Xbase and Xtend 2 (2.5h tutorial)

Sven Efftinge (itemis AG ), Sebastian Zarnekow (itemis AG ), Jan Koehnlein (itemis AG )

Making with Eclipse · Extended tutorial
Thursday, 10:30, 2 hours and 30 minutes | Ballroom A


The Indigo release of Xtext will come with a major enhancement called Xbase. Xbase is an extendable expression language developed with Xtext. It integrates tightly with the Java platform and JDT and is supposed to be mixed into your very own DSLs. Any language developed with Xtext can now contain Xbase's full-blown expressions. Ugly workarounds such as modifying generated code have finally become obsolete.

In this tutorial we will first develop a small DSL, using Xtext 2.0. In a second step we will learn about Xbase and its concepts. We'll see how easy it is to integrate this modern expression language into your DSL.

In the second part of the tutorial we will implement a compiler for the created DSL using the brand new language Xtend 2. Xtend 2 is the successor to Xpand which has successfully been used in industry and research for years. We think Xtend 2 is the best language to write code generators and often a great replacement for any kind of Java programming. Xtend 2 itself is also built on top of Xbase and compiles to readable, high performant Java code.

Join this tutorial and learn how to write a DSL and a code generator with Xtext, Xbase, and Xtend 2.


  • Develop a DSL with Xtext (Hands-On)
  • Xbase concepts
  • Integrate Xbase with the DSL (Hands-On)
  • Xtend 2 concepts
  • Write a code generator for the DSL with Xtend 2 (Hands-On)

Sven Efftinge (itemis) leads an Eclipse open-source developer lab in Kiel. He is project lead of the Xtext framework at and the original architect of the Xpand language family (a.k.a. openArchitectureWare 4). Sven is also a speaker at software conferences, co-author of a book and writes articles for magazines.

Sebastian Zarnekow is a software architect and consultant at itemis in Kiel, Germany. He develops frameworks and tools for model-driven and language oriented software development and is a committer for various Eclipse projects such as Xtext, Xpand or MWE. Sebastian is a speaker at conferences and author of articles for magazines.

Dr. Jan Koehnlein is working as software architect and consultant for itemis AG in Kiel (Germany). He has earned several years of experience in developing tools for model-driven software development. He commits to several Eclipse Modeling Projects, such as Xtext, Xpand and MWE.