|
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. |
 |
|
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. |
 |