# Domain-Specific Language **Domain:** Programming Languages / Human-Computer Interaction **Doc Type:** Canonical Concept Node **Maturity:** Foundational **Related:** [[wiki/Executable Markdown|Executable Markdown]], [[wiki/Intermediate Representation|Intermediate Representation]], [[wiki/Natural Language to DSL Compilation|Natural Language to DSL Compilation]] --- ## Definition **A domain-specific language (DSL) is a constrained notation designed to express operations in one problem domain more directly than a general-purpose programming language.** Its narrowness can improve readability, validation, tooling, and security. ## XDO Context DO is a document-native DSL for loading values, transforming records, applying templates, managing scopes, and placing results into named targets. It is intended to be understandable inside Markdown and executable across hosts that expose the same registered capabilities. ## Key Insight **A small language is valuable when its constraints make intention inspectable and execution governable.** ## See Also [[wiki/Dynamic Dispatch|Dynamic Dispatch]], [[wiki/Capability Registry|Capability Registry]], [[wiki/Multi-Pass Processing|Multi-Pass Processing]], [[wiki/Technical Terms|Technical Terms]]