Noel Weichbrodt summarizes the retrospectives his team has had for the last 18 months regarding using DSLs written in Scala and Lift for a GIS application.
Colin Gravill talks about how using F# to construct a shared analysis engine and the languages used to make the individual tools.
Alex Shatalin and Václav Pech discuss several language workbenches features - type system, dataflow, VCS, refactoring, debugging, and others – with examples based on JetBrains MPS.
Jim Duey advises on solving a problem by dividing it in smaller requirements that are dealt with, then using DSLs to compose results into one big solution. Code samples in Clojure.
Alex Shatalin and Václav Pech continue their language building demo using JetBrains MPS started in Part 1 of this presentations (see “Building Your Own Java, Part 1” on InfoQ).
Alex Shatalin and Václav Pech hold a hands on demonstration on using JetBrains MPS to generate a new language, including version control, debugging, testing, refactoring, etc.
Achim Demelt discusses creating a UI using a completely declarative DSL called S4 without flow control, events or data binding.
Phil Trelford suggests domains, such as modeling, DSLs, concurrency, for which functional programming is well-suited, and areas for which an OO or a mixed approach has better results.
Markus Völter discusses the abstractions that should be considered when creating a DSL, insisting on expressivity, semantics, modularity, and concrete syntax.
Maxim Mazin and Evgenii Schepotiev discuss the advantages of using DSLs by exemplifying application development with JetBrains MPS (Meta Programming System) and the Webr-DNQ framework.
Markus Völter demoes programming for embedded systems using JetBrains’ MPS language workbench supporting C, C extensions, DSLs, product line variability, requirements traceability and model checking.
Angelo Hulshout presents what problem the participants to this year’s Code Generation language workbench challenge had to tackle, their solutions, difficulties encountered, and lessons learned.