Domain-specific language (DSL) - experiences and some related blogs
I’ve been using the domain-specific language concept since the beginning of my PhD studies. During the thesis work, I developed my first DSL: an intermediate language (IL) based on the single-static assignment (SSA) form.
Some years later, the company I work (Prolan) started a huge project: to develop an electronic railway interlocking system, called PRORIS-E. As part of this project my team designed and implemented a higher and a lower level domain-specific language:
- PIL (Prolan Interlocking Language): to define railway interlocking algorithms
- XSML (eXtended State Machine Language): to describe the static and dynamic (state machine) aspects of network protocols
In all of these DSL projects Java and the related plugins of the Eclipse ecosystem have been used: EMF, Xtext, Xtend and VIATRA.
Some important blogs about DSLs and the Eclipse modeling framework: