From: ThoML Date: 2008-02-28T23:50:15+09:00 Subject: Re: proc.new and return > so in 1.9 > Proc.new { true } > and > Proc.new { return true } > are the same? Okay, it seems I mixed something up here. I think what I actually referred to (I have to admit this currently is as unclear as it is to you) probably is the change that proc has undergone. def foo(y) x = lambda {|x| return x} x.call(y) return y * 2 end def bar(y) x = proc {|x| return x} x.call(y) return y * 2 end p [foo(1), bar(1)] With ruby19 you get [2, 1]. With ruby18 it's [2, 2].