Book chapter · 2016
Domain-Specific Languages
Vassilios Karakoidas
An encyclopedia entry on domain-specific languages: what they are, what they buy and cost, how they are designed and implemented, and how they get embedded in general-purpose languages.
- Published in
- Encyclopedia of Computer Science and Technology, 2016
- Citations
- 0 on Google Scholar, read 5 September 2026 — 28 of 30 by count
- Cite as
- KARA16
The idea
A DSL trades syntactic range for fit: because the language is designed around one domain, programs in it express domain concepts directly, which is what lets domain experts take part in development and what makes the code shorter. The entry works that definition through a running example — a matrix, declared as pointer arithmetic in C, as a class in Java, and as a first-class notion in a language such as Octave or Mathematica, which has no meaning outside its domain.
What it covers
- The case for and against, split into technical (performance, security, reuse, testing) and managerial (a second language for the team to learn and maintain) arguments.
- Three widely used DSLs worked through with short practical examples.
- Design and implementation patterns for DSLs.
- Programming-language embedding: how the various approaches relate, and how they can be combined to improve DSL design and implementation.
Where it sits
It is the survey end of the same line of work as the thesis and J% — the general statement of a problem those attack with a compiler.
Written from the paper itself — the PDF linked above, which this site hosts.