Evolving a DSL Implementation

Laurence Tratt. Evolving a DSL Implementation. In Generative and Transformational Techniques in Software Engineering II. Volume 5235 of Lecture Notes in Computer Science, Springer Berlin / Heidelberg, 2008. [doi]


Domain Specific Languages (DSLs) are small languages designed for use in a specific domain. DSLs typically evolve quite radically throughout their lifetime, but current DSL implementation approaches are often clumsy in the face of such evolution. In this paper I present a case study of an DSL evolving in its syntax, semantics, and robustness, implemented in the Converge language. This shows how real-world DSL implementations can evolve along with changing requirements.