Эффективные абстракции прикладного уровня - вещь по сути своей динамичная (должны уточняться неоднократно в процессе работы даже над одной задачей, не говоря про переключение на смежные). Никакое языковое решение не сравнится в гибкости с обычным библиотечно-каркасным. А значит, быстро отстанет от понимания задачи и будет "жать".

Имхо, деятели типа Фаулера занимаются DSL не потому, что понимают "под давлением практики", что они эффективны, а потому, что верят в давний бродячий мем "уровень языков программирования будет неуклонно повышаться" - и пытаются этот мем реализовывать.