Why Domain-Specific Languages?

  • Faster software development – productivity of professional programmers would be increased due to the higher abstraction power of DSLs.
  • More reliable software – the reliability of software would be enhanced due to better verifications at DSL level.
  • New software development paradigm – “do-it-yourself computing” where an end-user would be able to develop most of those applications which suit his/her everyday needs.
  • Less-error prone end-user code – with test engines and debuggers that work at DSL level the end-user would be able to discover and locate faults in their programs. Hence, a better quality of end-user development would be achieved.


Our short and long term objectives in DSL research:

  • Investigation of various techniques which contribute to easier development of DSLs.
  • Investigation of various techniques for easier development of DSLs tools (e.g., debuggers, test engines), which would also assure better quality for end-user development.
  • Investigation of various intelligent approaches (e.g., program by examples, learning the user's actions) to help in end-user programming.
  • To popularize and increase the use of DSLs in various domains (e.g., multi-agent systems, data acquisition, evolutionary computations).