Why Program by Hand in Five Days what You Can Spend Five Years of Your Life Automating?
Terence Parr discusses using automation tools including DSLs to automate the software creation process as much as possible in order to increase output, effectiveness, correctness and velocity.
Terence Parr is a professor of computer science and graduate program director at the University of San Francisco, where he works on his ANTLR parser generator and template engine, and he held various technical positions at companies such as IBM, Lockheed Missiles and Space, NeXT, and Renault Automation. He is the author of "Language Implementation Patterns" and "The Definitive ANTLR Reference".
The Code Generation conference is Europe's leading event on Domain-Specific Languages, Model-Driven Software Development and Language Workbenches. The event has a strong practical focus on sharing experiences of what does and doesn't work.
I think he deserve Turing Award.
See somewhat similar talk by Alan Kay by
The title is "Programming and Scaling". This one is a "must see".
ML family of languages (including F#) have really good pattern matching; so key to DSLs. F# adds a few other features like "Active Patterns" and Quotations that really help with DSL implementations.
Haskell, Scala and F# have monadic parser combinators for "executable grammars" (write the grammar and you get the parser).
For DSLs, look towards functional languages.
Did not mention the most widely used dynamic language