This week I am attending the Code Generation 2008 event in Cambridge, UK.
The first day passed really fast with lots of great topics and presenters. Below are a few interesting quotes and thoughts from the day.
Keynote: Matching Supply and Demand: Challenges in Model-Based Code Generation for Quality of Service-Constrained Software by Bran Selic (Malina Software Corp)
Bran‘s presentation had many thought provoking statements and questions in the domain of System Engineering with Quality of Services (Non-functional) requirements. Amongst many statements, the following was maybe the strongest hit:
Platform independent != Platform ignorant
Direct Code Generation with Built-in Flexibility by Anneke Kleppe (CapGemini NL)
An interesting talk about hard-coded (programmatic) transformations. She was talking mostly about the Octopus project. She emphasized a lot the importance of decomposition on many levels including not only the target application but also the code generator.
DSL model is not a DSL! Just like a .java file is not the Java language
is a reminder of how misused terminology and jargon has polluted not only this domain [DSL] but the whole IT industry.
Panel: MDD and Software Product Lines – a marriage made in heaven? Mark Dalgarno (Software Acumen), Juha-Pekka Tolvanen (MetaCase), Ian Barnard (Telelogic), Markus Voelter (independent)
On the volatility of investment in DSL and code generators (somebody from the audience):
The value of information captured in models (instances) is orders of magnitude larger than the investment in the meta-model, transformation, tools.
Goldfish Bowl: Approaches to DSL Evolution chaired by Peter Bell
First of all the concept of a goldfish bowl discussion is brilliant! I do not know how these work generally but this instance of it went very-very well.
The discussions were mainly skirting around the situations where the DSL changes. The typical questions came up were:
- What happens to the existing model instances?
- What happens to the existing code generators?
- Is there a way to make the transition (evolution) automated?
Tutorial: Concrete Syntaxes of DSLs by Arno Haase (Haase Consulting) and Sven Effinge (itemis)
It was a fairly basic overview of various DSL and DSM approaches with a demo of openArchitectureWare‘s tools. The demo was a nice example of using textual modelers (xText) together with graphical editors (GMF).
Birds of a Feather: The Art of Abstraction
The main theme for this BoF was to list and discuss the considerations that make a DSL a good DSL.