Welcome to Code Generation 2010

Code Generation 2010 is now over. Thanks to our speakers, participants and sponsors for making it another successful event.

Find out about our next event: Code Generation 2012


Join the Code Generation community at the Model Driven Software Network.


The Code Generation conference is Europe's leading event on Domain-Specific Languages, Model-Driven Software Development and Code Generation. The event has a strong practical focus and an emphasis on sharing experiences and knowledge. A range of sessions from beginner to expert is included.

The conference program had 30+ hands-on, case study, tutorial, panel and keynote sessions from leading practitioners.

Hear what participants thought about last year's conference in this short video clip:


CG2010 is for people who want to successfully apply or just learn more about the following topics:

The focus throughout the event is on practical experience of these tools and technologies with a range of sessions from beginner to expert.


We are very pleased to introduce Dave Thomas (Pragmatic Programmers) and Eelco Visser (Delft University of Technology) as conference keynote speakers. Full details of Dave's and Eelco's keynote talks will appear here shortly.

Dave Thomas

KEYNOTE - The Imaginary Sickness of the Middle-Class Gentleman

"For more than forty years I have been speaking prose without knowing anything about it…”

So says M. Jourdain in Le Bourgeois Gentilhomme. But, writing 340 years ago, Molière could have been writing about me. For I too have been writing a kind of prose—Domain Specific Languages—for about 40 years. Now, like Jourdain, I find there's a name for what I do, and I find that there are professors studying it and conferences discussing it. How exciting!

But as Molière also said, “Nearly all men die of their remedies, and not of their illnesses.” And that's a trap we seem to be rushing towards with our new enthusiasm for DSLs. So in this talk we'll look at DSLs, and why most of them seem to have too little D and too much L. Bring rotten fruit.

Dave Thomas is a programmer.

Dave Thomas

Eelco Visser

KEYNOTE - Building Domain-Specific Languages with the Spoofax Language Workbench

Domain-specific languages are a key component of code generation. While we have ample experience building code generators and compilers, modern software developers expect integrated development environments such as Eclipse and Visual Studio to boost their productivity. To achieve the productivity gain promised by domain-specific languages, it is required that they come with strong IDE support. Since the production of DSLs cannot afford the effort that is put into IDEs for general-purpose languages, better tools are needed.

In this talk I present the Spoofax language workbench, an Eclipse plugin for creating Eclipse plugins for custom (domain-specific) languages. Spoofax integrates several domain-specific languages for language definition. SDF supports modular, declarative definition of syntax with arbitrary context-free grammars integrating lexical syntax. A new implementation of the SGLR parser for SDF supports sophisticated error recovery. Stratego supports model transformation, code generation, static analysis, and refactoring with rewrite rules and programmable strategies. Editor service DSLs support declaration and customization of syntactic editor services such as syntax highlighting, folding, outline views, and semantic editor services such as error checking, cross references, content completion, and refactorings.

I'll introduce Spoofax using a subset of the WebDSL web programming DSL as an example.

Eelco Visser is associate professor at Delft University of Technology where he conducts research in the areas of model-driven engineering, domain-specific languages, program transformation, and software deployment. Together with his students he has designed and implemented domain-specific languages for syntax definition (SDF), program transformation (Stratego), software deployment (Nix), and web application development (WebDSL). In the research project 'Model-Driven Software Evolution' he is investigating the introduction of domain-specific languages as a standard software development tool, including the effective and efficient construction of DSLs, but also the maintenance of DSLs and systems built with them.

Eelco holds an MSc and PhD in computer science from the University of Amsterdam. He was a postdoctoral researcher at the Oregon Graduate Institute and an assistant professor at Utrecht University. He has published over 50 papers in peer-reviewed venues and has served on many program committees of program generation-related conferences including GPCE,OOPSLA, ECOOP, ASE, MODELS, LDTA, SCAM, RTA, and PEPM. He was program (co-)chair of RULE'02, GPCE'04, PEPM'07 and is general chair of GPCE 2010.

Eelco Visser