
A definitive guide to using the latest verson of the parser generator covers such topics as grammar syntax, resolving grammar ambiguities, parser fault tolerance and error reporting, and generating source code.
To have a 'proper' DSL I reckon you need two things, and understanding that a thing can and should be broken out into its own sublanguage, and the ability to do so. The first takes a certain kind of nouse, or common sense. The latter requires knowing how to construct a parser properly and some knowledge of language design.
Knowing how to write a parser is not particularly complex but as the industry is driven by requirements more of knowing 'big data' frameworks rather than stuff that is often more useful, well, that's what you get, and that includes people who try to parse XML with regular expressions (check out this classic answer <https://stackoverflow.com/questions/1732348/regex-match-open...> Edit: if you haven't seen this check it out cos it's brilliant).
I think this reflects the fundamental problem in software development of the market's not knowing what's actually needed to solve real business problems.
++++
Edit, some reading material
https://www.amazon.co.uk/Language-Implementation-Patterns-Do...
https://www.amazon.co.uk/Definitive-ANTLR-Reference-Domain-S...
https://www.amazon.co.uk/yacc-Nutshell-Handbook-Doug-Brown/d...
They're all worth investing the time in.
"The Definitive ANTLR 4 Reference" is absolutely the most understated title I've ever seen in a book. It's really more like "The Book That Will Change How you Look at Programming Languages Forever"
IMO anyway. I guess it depends on how much you've been exposed to parsers and grammars and compiler compilers already.
Dragon Book
LLVM Essentials
Nothing on machine organization and assembly. Computer Organization and Design
ARM Cortex A72 Software Optimization Guide
Intel® 64 and IA-32 Architectures Optimization Reference Manual
The microarchitecture of Intel, AMD and VIA CPUs
Parsing Language Implementation Patterns
The Definitive ANTLR 4 ReferenceTParr's The Definitive ANTLR 4 Reference is quite good. And so's this mega tutorial.
https://pragprog.com/book/tpantlr2/the-definitive-antlr-4-re...
ANTLR is my goto tool for DSLs.
http://www.antlr.org/wiki/display/ANTLR4/ANTLR+4+Documentati...
http://pragprog.com/book/tpantlr/the-definitive-antlr-refere...
-- + --
Language Implementation Patterns: Create Your Own Domain-Specific and General Programming Languages
"Learn to build configuration file readers, data readers, model-driven code generators, source-to-source translators, source analyzers, and interpreters. You don’t need a background in computer science—ANTLR creator Terence Parr demystifies language implementation by breaking it down into the most common design patterns. Pattern by pattern, you’ll learn the key skills you need to implement your own computer languages." http://pragprog.com/book/tpdsl/language-implementation-patte...