投稿は初めてです。DP.といいます。 BigNum のバグについては同じく 1.6.2 ですが再現しませんでした。 => 3065036675 => 2078129134 環境及びバイナリは i686-MSWin32。 さて、イテレータとコンテキストの問題ですが、ちょっと書くと class C def initialize(&iter) @a = 12 @p = proc { instance_eval(&iter) } end def fa @p.call end end o = C.new { @a + 16 } p o.fa は、しっかりと動きました。(出力:28) >@proc=proc{instance_eval(&proc)} と何が違うのでしょうか…。 もし質問の意図を間違えていたら申し訳有りません。 # From class C;def another;;end;def Just;;end;def ruby;;end;def hacker;;end;end print C.instance_methods.reverse.join(" "), ',' # "DP.-KAORU" <program-zero / ma4.seikyou.ne.jp>