나의 충고는 : Do !
그러나 당신이 그것을 사용하는 경우에만.
내부적으로 DSL을 직접 사용하려는 경우 DSL을 만들 필요가 없습니다.
Galaxy는 Startcraft II 편집기에서 사용하는 스크립팅 언어입니다. 도메인 특정 언어의 주요 예입니다.
프로그래머가 아닌 게임 디자이너를 대상으로합니다.
Timer - Start Raise Lava Timer as a One Shot timer that will expire in 20.0 Game Time seconds
Variable - Set Raise Lava Timer = (Last started timer)
Timer - Create a timer window for (Last started timer), with the title "Lava will raise in: ", using Remaining time (initially Visible)
Variable - Set Lava Timer Window = (Last created timer window)
Timer - Show (Last created timer window) for (All players)
Variable - Set Lava Death? = false
샘플 튜토리얼
Lisp는 도메인 별 언어를 만드는 데 사용할 수있는 완벽한 언어이지만 다른 옵션도 있습니다. 부처럼.
그렇게하면 디자이너 / 모듈러가 프로그래밍을 배울 필요가 없습니다. 단지 루아 일지라도 여전히 프로그래밍입니다.
편집 : DSL을 스크립팅 언어로 구현할 수 있다고 덧붙이겠습니다. 스크립팅 언어를 사용하지 않는 것과 동의어가 아닙니다. 특히 Lisp 또는 이와 유사한 것을 사용하는 경우 도메인 특정 언어를 만드는 데 매우 적합합니다.