The DSL movement is in a stage that is similar to the stage of OO before Design Patterns were documented.
The concepts for DSLs are slowly being fleshed out. As experience is gained, best practices will evolve. But we are at the beginning of this process!
Along those lines:
Overuse of DSLs is one of the antipatterns in Groovy development.
Do not create a DSL if a native solution would be as elegant.
Some DSLs will live and some DSLs will die...
- Rocky Lothka, .NET Rocks Episode 417