Textual modeling tools: overview and comparison of language workbenches

Bernhard Merkle. Textual modeling tools: overview and comparison of language workbenches. In SPLASH '10: Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion. ACM, New York, NY, USA, 2010. [doi]

Abstract

Domain Specific Languages (DSL) attract more and more users as they are specialized and optimized for a certain problem area. Currently the number of new emerging Programming Languages is significant [1] but GPL (General Purpose Languages) do often not fit the specific need of the end-user. DSL are one way to solve this problem. DSLs can be divided into different independent dimensions: e.g. internal vs. external or textual vs. graphical or tabular. In this paper we focus on textual syntaxes as they have several advantages like easy information exchange via e.g. mail, integration into existing tools like diff, merge and version control and most important the fast editing style supported by the “usual” IDE support like code completion, error markers, intentions and quick fixes. While Fowler described the initial vision of Language Workbenches [2], several mature Textual Language Workbenches have emerged in recent years. In this paper we will compare them with a consistent example and look at pros and cons.