DSL은 도메인 특화언어입니다. ( Domain-Specific languages ) DSL은 에러를 줄이는데 도움을 주는 동시에 프로그래머에게 유연성을 제공합니다. 이번 글에서는 DSL을 설계하는 방법에 대해서 작성해보겠습니다. DSL의 타입과 특징 외부 DSL vs 내부 DSL 외부 DSL은 높은 자유도를 얻을 수 있지만 DSL을 파싱하고 처리할 파서를 만들어야만 합니다. 파서를 만드는 데는 많은 리소스가 필요합니다. 외부 DSL의 예로는 CSS, ANT 빌드파일, Make 빌드파일 등이 있습니다. 하지만 이번 글에서는 내부 DSL에 초점을 맞출 것입니다. 내부 DSL을 위한 코틀린 DSL을 디자인할 때 도움이 되어줄 코틀린의 기능을 살펴보겠습니다. 생략 가능한 세미콜론 코틀린은 세미콜론을 강요하지 ..