Un lenguaje específico de dominio o DSL es un tipo de lenguaje de programación diseñado para ser especialmente eficaz en una aplicación particular, en contraste con los lenguajes de propósito general que pueden ser utilizados para resolver cualquier tipo de problema.