前橋です。 From: matz / netlab.co.jp (Yukihiro Matsumoto) Subject: [ruby-list:6068] Re: Ruby 連載 第 3 回 Date: Wed, 28 Jan 98 19:26:12 +0900 > |ここで質問なのですが、上記のイテレータブロックは一体いつどこで評価され > |るのでしょうか。tk.rb をみてもよくわかりませんでした。 > > 実際にはtkutilモジュールで定義されているTkKernel.newで評価し > ています.これはイテレータブロックを評価する間selfの値を差し > 替えてしまうという邪悪なイテレータです. tkutil.c の if (iterator_p()) rb_yield_0(obj, obj); のあたりですね。そういえば tk.rb だけでなく C のコードもあったのでした。 > # だから,あんまり勧めないわけ. でもパラメータに書き並べるより見やすい/書きやすい気がします。