lambda と proc と Proc.new とイテレータの違い。

class Proc

Kernel.#lambda と Proc.new はどちらも Proc クラスのインスタンス(手続きオブジェクト)を生成しますが、 生成された手続きオブジェクトはいくつかの場面で挙動が異なります。

Kernel.#lambda != Proc.new

class Proc

Kernel.#proc は Proc.new と同じになります。

Kernel.#proc == Proc.new

で、

Kernel.#lambda == Kernel.#proc

なん・・・だと・・・?

タイトルとURLをコピーしました