BooはDSLの構築に適しているという評判なので、そのへんの事を確かめてみる。 そもそもDSLとはDomain Specific Language(ドメイン固有言語)の略で、C#なんかのプログラミング言語が汎用的なのに対して、特定のドメイン(領域)に特化した言語のことをいう。 例えば、最近巷で話題のSilverlightでUIを記述するマークアップ言語であるXAMLもその一つ。本来SilverlightでのUIの構築はC#やVBで行うようになっているけど、コードで記述するのはあまりに冗長で見通しが悪いので、XAMLのような宣言型の形式を取ることでその部分を解決している(冗長なのは変わりないけどね)。 まぁ、要するにコードで書くのが面倒くさいから、なんかもっとわかりやすい表現にして楽しようということだ。 で、DSLがあると便利なもので真っ先に私が思い浮かべるものは「DIコンテナ」だ。 普段S