Scarlet

HawkさんがDIコンテナを公開されました。
http://www.hawklab.jp/scarlet/

ちらっと見てみましたが、素晴らしいです。はい。
おいらのレベルの低さなんだけど読み間違ったのが、ComponentBuilder.phpのbuildメソッドのswitch文。うにゃbreakがないので一瞬読み誤りました・・・

潔くて共感したのがScarlet_Util_Call。動的にメソッドコールすることがよくあるんですが、「引数3つまでは許す」という部分。

参照を返す場合全部同じソースで書こうとすると、どうしてもevalにするしかないのですが、パフォーマンスを犠牲にするということで引数3つまではベタ書きしておくので許すというやつですね。
裏方ではこういうのが必要なんだよなぁ。

メタ定義設定で、classが使えないんだろうなぁとか、outerが禁止されているのにメタ定義では使えるのかなぁとか色々と疑問があるけど、後の楽しみにしておこう。