Domain-specific language (noun): a computer programming language of limited expressiveness focused on a particular domain.

  • Regular Expressions
  • CSS
  • graphviz
  • make
  • FIT
  • cucumber
  • rails validations
  • JMock expectations
  • ant
  • (many more examples)…

Q&A on Domain Specific Languages

A quick outline of the common questions, and answers, about DSLs


I’ve done a few interviews on DSLs, which help provide an introduction to the topic and how I’ve approached it.


  • Informit Neal Ford interviews Rebecca and me
  • Dr Dobbs An interview with Rebecca and me in Dr Dobb’s


Free First Chapter

I made the first chapter of my DSL book act as an introductory example to help the reader get an overview of DSLs and how I talk about them. As a result it makes a good introduction to DSLs, so it’s particularly nice that Addison-Wesley made this chapter freely available. You can use it to judge whether the full book is likely to be worthwhile, or just use it as a brief overview of the topic if you don’t want to dig further.

Catalog of DSL Patterns

The DSL book uses patterns to help structure its content. I keep a brief summary of these patterns here, primarily to act as a reliable URI for reference purposes.