DSL (Domain Specific Language) adalah bahasa mini yang dioptimalkan untuk satu domain masalah tertentu — HTML, SQL, build script, atau routing HTTP. Kotlin menyediakan kombinasi fitur — extension function, receiver function type, trailing lambda, dan @DslMarker — yang memungkinkan kita membangun DSL internal yang type-safe dengan sintaks deklaratif. Pada section ini kita akan melacak perjalanan dari konsep dasar DSL, pola builder dengan receiver lambda, pembatasan scope dengan anotasi @DslMarker, hingga praktik merancang DSL internal yang idiomatik dan siap produksi.