domain-specific languages (DSL),
model-based software development,
Eclipse based tool development

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: