LanguageWorkbench dsl Reactions

Language Workbench is a term I coined in 2005 to describe a new class of software development tool, designed to build software through a rich environment of multiple, integrated, DomainSpecificLanguages. These tools are still quite a way away from being mainstream, but development on them continues and continues to be interesting. They are one of the few things I feel could significantly change the programming landscape.

Language workbenches support the idea of Language-Oriented Programming, which is the notion of building a sofware system by identifying the various areas of the system and using (perhaps building) a Domain Specific Language for each area. The workbench both supports the definition of these languages and also integrating them together into a coherent whole.

To define the DSLs the workbench supports:

  • Defining the schema for a Semantic Model for the language
  • Defining one or more rich editing environments for the language
  • Defining the behaviorial semantics for the language, through some mix of interpretation and code generation.

The editing environments are what makes these tools stand out. People have been making external DSLs for decades, but you edit these in a text editor. language workbenches look to take this much further, approaching the level of modern PostIntelliJ IDEs, or even beyond. Some language workbenches support editing in regular text, others use projectional editors that support structured text that needs no parsing, or diagrams, or both.

In 2005 I wrote a set of papers on Language Workbenches. Some of these thoughts need to be revised, but for the moment they are the best deeper discussion on them.


Links
home
bliki
feed 
Translations
Japanese
Spanish
Korean
Chinese
Thai
Categories
agile
design
dsl
leisure
refactoring
ruby
thoughtWorks
tools
uml
writing
Blog Roll
ThoughtBlogs
TW Alumni
Nicholas Carr
Steve Cook
Brian Foote
Simon Harris
Gregor Hohpe
/\ndy Hunt
Ralph Johnson
Patrick Logan
David Ing
Brian Marick
Jeremy Miller
Jimmy Nilsson
Samuel Pepys
Keith Ray
Johanna Rothman
Kathy Sierra
Dave Thomas