まつもと ゆきひろです

In message "Re: [ruby-dev:30855] Re: block wrapper"
    on Thu, 31 May 2007 12:23:39 +0900, Tanaka Akira <akr / fsij.org> writes:

|その新設する Proc#yield といのは Proc#call と機能的な違いは
|ありますか?

機能的な違いはありません。では、なぜ導入するかというと、

  * yieldの方は、ブロックを呼び出すというニュアンスをより強く
    表現できる

  * nil#yield(いつもエラーになる)を同時に定義するのでブロック
    が与えられないの(ブロック引数がnil)の時のエラーが

      undefined method `call' for nil:NilClass

    よりマシになる。

という理由です。