まつもと ゆきひろです

In message "[ruby-dev:16269] Re: pstore.rb and sync.rb"
    on 02/03/08, Shugo Maeda <shugo / ruby-lang.org> writes:

|Visitorみたいなものだと思えば、悪くないように思います。

そーですねえ。

|> それと、ややオブジェクト生成のコストが上がるのが気になるとい
|> えば気になります。
|
|initialize_forを定義しなかった時のコストがそんなに悪くなければ(た
|とえばフラグのチェックとかで済めば)、そんなに気にならないと思うの
|ですが、どうでしょう。

たぶん、するならKernel.initialize_for()をなにもしないメソッ
ドにしておいて、それを呼ぶという実装にすると思います。

とすると、コストは

  * そのオブジェクトのCLASS_OF()の全ancestorsからmoduleを選
    び、それぞれについて1回メソッド呼び出し

ということになります。まあ、たいしたことはないというか、すべ
てのオブジェクトについてだから馬鹿にできないというか。

あと、initialize_for()って名前(「動詞+前置詞」パターン)はあ
んまり好きな名前じゃないです。