原です。

In message "[ruby-list:10243] Re: for =?ISO-2022-JP?B?GyRCJCw9JD5+O1IkQCRDJD8kaRsoQg==?="
    on 98/10/22, Junichi Kurokawa <jun / mew.gol.com> writes:

|イタレーターのあとにはブロックが来るものではないんですか。ブロックが来る
|可能性がある場合はブロックおよびひいてはブロックの終わりを明示すべきです
|ね。ほかにもperl(1)はifなどにブロックの省略を許しません。

ruby では単なるメソッドとイテレータは構文上同じなんですよ。
例えば each をイテレータブロックがなくてもエラーを起こさな
い様に再定義できます。

あるメソッドがブロックを伴っているかどうかは iterator? で判
断します。だからブロックを伴う時とそうでない時と違う動作をす
るようなメソッド(=イテレータ)を作ることもできるわけです。