From: "Abinoam Jr." Date: 2011-01-23T04:20:04+09:00 Subject: Re: Lexical vs Dynamic Scope On Sat, Jan 22, 2011 at 4:12 AM, Josh Cheek wrote: > def show_error(f) >  f.call > rescue => e >  e > end > > f = lambda { x } > show_error f # => # main:Object> > > x = 1 > show_error f # => # main:Object> > > g = lambda { x } > show_error g # => 1 After doing the above, try this. def x "Anything returned by the (Receiver).x method" end show_error f # => "Anything returned by the (Receiver).x method" show_error g # => 1 At compile time... f = lambda { x } x is not defined, and is thought to be a method! Look... http://www.ruby-forum.com/topic/724184 Abinoam Jr.