>>>>> "H" == Hidetoshi NAGAI <nagai / ai.kyutech.ac.jp> writes:

H> Well, how about this?

 If I can read the source

svg% cat b.rb
#!/usr/bin/ruby
def foo(fp)
  wp = proc{|s| p $SAFE; fp.print(s)}
  proc{|s| $SAFE=4; wp.call(s.to_s)}
end
wp = foo(open('hoge', 'w'))

puts '========================='

$SAFE = 4
eval('wp.call(eval(%q{class << a = [12]
                       def to_s
                          $stderr.puts "coucou :-)"
                          super
                       end
                    end
                    a}))', wp.binding)

svg% 



Guy Decoux