こんにちは、なかむら(う)です。 以下の2つのコードが、1.8とtrunkで動作が異なります。 なぜでしょう? 私には1.8の挙動が自然に思えます。 # その1 x = 0 eval("p x", TOPLEVEL_BINDING) # 1.8 => 0 # trunk => NameError # その2 BEGIN{$b = binding} eval("p x", $b) # 1.8 => NameError # trunk => 0 それでは。 -- U.Nakamura <usa / garbagecollect.jp>