狭いDSLには浪漫がある

ゲーム開発向けにDSL (Domain Specific Language, ドメイン特化言語)を使おうよ、っていう話、なんだけど、

DSL that creates art based on the abstract paintings of Parappa creator Rodney Alan Greenblat

パラッパっぽい抽象的なアートワークを作るためだけのDSLだって!これは適用範囲狭いわ。

superegg 0.15,0.10,3.5 at .3,.7 size 1.2 black distort .01
petals 14 0.05 size 1.8 petalblue
inner .88,.01 tvpurple
...

いやー、この汎用性のかけらもない言語仕様がいいね!DSLは汎用性が低ければ低いほど浪漫があるよ。

こういった狭いDSLを組み合わせてゲームを作るってのは、その開発効率が高いか低いかは別にして楽しそうだ。ただDSLを作るのは設計も実装もそんなに簡単じゃないから、そういう開発アプローチに手馴れるまでは時間がかかりそうだ。

ゲーム向けの非汎用DSLって他にどういったものがあるのかな。まあBulletMLもそうなんだけとね。