私のアドバイスは次のとおりです。
ただし、使用する場合のみ。
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は、ドメイン固有の言語を作成するために使用するのに最適な言語ですが、もちろん他のオプションもあります。ブーのように。
そうすれば、デザイナー/モダーはプログラミングを学ぶ必要がありません。たとえそれがLuaだけであっても、それはまだプログラミング中です。
編集:DSLをスクリプト言語で実装できることを付け加えます-スクリプト言語を使用しないことと同義ではありません。特にLispなどを使用している場合は、ドメイン固有の言語を作成するのに非常に適しているためです。