Jim Freeze wrote: > Hmm, that could be a bug in ruby because > > p BAR > > works. Hrm? Not on my machine. class Foo BAR = 1 def initialize( &block ) instance_eval &block end def bork puts "bork: self is #{self}" puts "bork: BAR is #{BAR}!" end end Foo.new{ bork puts "block: self is #{self}" #puts "block: BAR is #{BAR}!" p BAR } #=> bork: self is #<Foo:0x32af44> #=> bork: BAR is 1! #=> block: self is #<Foo:0x32af44> #=> NameError: uninitialized constant BAR