As I’ve said at the beginning of this book, the software world is full of DSLs. Here I want to show a brief summary of a few of them. I haven’t picked them out of any desire to show the best; it’s just a selection of those I’ve come across and considered suitable to show the variety of different kinds of DSL that exist. It’s a tiny fraction of DSLs that exist out there, but I hope even a small sample can give you a taste of the full population.
Graphviz is both a good example of a DSL and a useful package for anyone working with DSLs. It is a library for producing graphical renderings of node-and-arc graphs. Figure 10.1 shows an example stolen from Graphviz’s website.