From: matz@... (Yukihiro Matsumoto) Date: 1998-10-22T15:53:13+09:00 Subject: [ruby-list:10249] Re: for が修飾子だったら まつもと ゆきひろです In message "[ruby-list:10245] Re: for が修飾子だったら" on 98/10/22, 市川 裕隆 writes: | 市川です。 |> それは既に聞きました。ただし、なぜ「とみなすことが出来る」のか説明が欠落 |> していました。今回もなく、不満です。 | | これって、「eachというメソッドはイテレータを持っている」 | のが文法で保証されてるわけじゃなくて、たまたま | 「イテレータを持つメソッドにeachという名前がよく使われている」 | っていうことですよね?>松本さん 「イテレータ」を持つって表現はやや誤解を招きやすいですね. 任意のメソッド呼び出しの直後に置くことの出来る「ブロック」と いう構文要素があり,メソッドに暗黙の引数として「文の塊」を渡 すことが出来ます.このような「ブロック」を渡されることを期待 しているメソッドを「イテレータ」と呼ぶことがあります. # 最近のRubyドキュメントでは誤解を避けるため「イテレータ」と # いう表現をなるたけ使わないようにしてます.「ブロックを与え # られたメソッド」のようなやや婉曲な表現が多くなってます. Rubyでは「イテレータ」は構文要素ではなく,メソッドの性質です. パーザにはあるメソッドがイテレータであるかどうかは全くわかり ません. まつもと ゆきひろ /:|)