Domain Specific Languages


A domain-specific language (DSL) is a programming or executable specification language that offers, through appropriate notations and abstractions, expressive power focused on, and usually restricted to, a particular problem domain.

Forms of DSLs

  • Wizard
  • Configuration tool
  • Library in a programming language
  • Textual DSL
  • Visual DSL

Advantages of DSLs over General-Purpose Languages (GPLs)

  • Domain-specific abstractions
  • Domain-specific concrete syntax
  • Domain-specific error checking
  • Domain-specific optimizations
  • Domain-specific debugging, version control etc.

See Also

Generative Programming
Generic Programming
Aspect Oriented Programming

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-Share Alike 2.5 License.