OCTOBER 25 TO 29, 2009
DSLs come in three sorts: internal DSLs, external DSLs, and language workbenches. An internal DSL is expressed within a hosting language, enjoying native tooling but confined to the hosting language's syntax and expressiveness. An external DSL defines its own foreign language for expressing domain specific terms, but typically lacks tool support. A language workbench treats external DSL like internal ones, thus combining the benefits of the two worlds. While there are many examples of internal and external DSLs, a DSL workbench is relatively a new concept coined by Fowler with few examples to learn from. In this demo we illustrate ModelTalk; a language workbench facilitating DSL based development. ModelTalk DSLs are external to Java, yet they enjoy Java-like automatic tool support and enhanced expressiveness.
Full author list: