The document discusses declarative language definition using meta-languages and language workbenches. It describes using declarative domain-specific meta-languages to define the syntax, semantics, and other aspects of programming languages. Language workbenches that use these meta-languages can then derive implementations like compilers and editors from the language definitions. The Spoofax language workbench is presented as an example that uses SDF3 for syntax, NaBL2 for static semantics, and DynSem for dynamic semantics.