My take is that all embedded DSLs are bad. By embedding your DSL in another language you might gain certain things for free, but you also sacrifice a lot of control and often extra boilerplate code is necessary.
The exception of course is Lisp where embedded languages can feel like standalone languages.