¿Cuándo debo usar un lenguaje específico de dominio?

Me gustaría una guía práctica sobre cuándo debo usar unLenguaje especifico de dominio. He encontrado recursos sobre ventajas y desventajas, pero ¿qué tipo de proyecto justificaría su uso?

Parece que hay una gran inversión en tiempo para crear y mantener un DSL, por lo tanto, ¿en qué espacio de la aplicación obtendré un retorno de productividad en mi inversión de tiempo?

Editar: Parece que el uso más común de DSL es para formatos de archivo para el estado de datos persistentes, ¿qué hay de usar un DSL para la lógica y la estructura del programa (tal vez la generación de código)? ¿Cuándo es esto factible?

Editar # 2 Principalmente pregunto cuándo está valiendo la pena la creación de un DSL específico. Por supuesto, deberíamos usar los DSL existentes tanto como sea posible para ahorrar tiempo.

Respuestas a la pregunta(6)

Su respuesta a la pregunta