In this section, we're going to explore the fundamentals of DSLs. We'll discuss what they are and why they can be useful, and finally, we'll briefly explore several examples of Kotlin-based DSLs for different domains.
What is a DSL?
Domain-specific languages
So, what is a DSL? A DSL is a computer language targeting a specific problem or domain space. This is in contrast to general-purpose programming languages that are meant to be capable of solving general computing problems. HTML is an example of a domain-specific programming language as it's meant to be used for a very specific problem.
The distinction between general-purpose programming languages and domain-specific languages can be fuzzy at times...