From: Victor Shepelev Date: 2006-05-08T22:47:40+09:00 Subject: Re: A few block-related questions From: Robert Klemme [mailto:shortcutter@googlemail.com] > 2006/5/8, Victor Shepelev : > > Hi all. > > > > Here is the code: > > > > str = 'some string' > > blk = lambda{|arg| self.text = str; self.text = arg} > > > > class A > > def text=(str) > > #blah > > end > > end > > > > A.new.instance_eval( &blk ) > > > > Questions about the code: > > 1. str would be always visible to block? (Quick tests says yes, but it > was > > unexpected for me) > > 2. how can I pass argument to block? > > You can as well pass self as argument: > > blk = lambda {|it, text| it.text=text} > > a=A.new > blk.call a, str > Yes, I can. But it looks a bit ugly, isn't it? > robert Victor.