Good error reporting in DSLs is hard: Ruby: https://zef.me/2308/when-rails-fails Scala: https://zef.me/blog/2371/when-scala-dsls-fail (2009—I imagine things are much improved)
miniblog.
Related Posts
On choosing abstractions, and the consequences of being expert friendly in DSLs:
Red (the language) supports some very elegant DSLs. Here's Parse, a lovely way of defining grammars:
A DOMain of Shadows http://t.co/G8Fu78l0dd Superb discussion of internal DSLs vs custom syntax.