まつもと ゆきひろです

In message "[ruby-list:10245] Re: for  が修飾子だったら"
    on 98/10/22, 市川 裕隆 <hirotaka.ichikawa / tosmec.toshiba.co.jp> writes:

|	市川です。

|> それは既に聞きました。ただし、なぜ「とみなすことが出来る」のか説明が欠落
|> していました。今回もなく、不満です。
|
|	これって、「eachというメソッドはイテレータを持っている」
|	のが文法で保証されてるわけじゃなくて、たまたま
|	「イテレータを持つメソッドにeachという名前がよく使われている」
|	っていうことですよね?>松本さん

「イテレータ」を持つって表現はやや誤解を招きやすいですね.

任意のメソッド呼び出しの直後に置くことの出来る「ブロック」と
いう構文要素があり,メソッドに暗黙の引数として「文の塊」を渡
すことが出来ます.このような「ブロック」を渡されることを期待
しているメソッドを「イテレータ」と呼ぶことがあります.

# 最近のRubyドキュメントでは誤解を避けるため「イテレータ」と
# いう表現をなるたけ使わないようにしてます.「ブロックを与え
# られたメソッド」のようなやや婉曲な表現が多くなってます.

Rubyでは「イテレータ」は構文要素ではなく,メソッドの性質です.
パーザにはあるメソッドがイテレータであるかどうかは全くわかり
ません.
                                まつもと ゆきひろ /:|)