Thank you for your proposals. I'll prefer to avoid patching the 
interpreter for now :p
I need this feature because I'd like to know each time a local variable 
is updated. So, I found a way using set_trace_func and the binding 
attribute, here it is:

set_trace_func lambda { |event, file, line, id, binding, classname|
  if event == "line" or event == "return"
    local = eval("local_variables", binding)
    local.each do |l|
      puts "#{l} : #{eval(l, binding)}"
    end
    puts "======"
  end
}

I suppose this is not really nice about performance, but it's working :p
-- 
Posted via http://www.ruby-forum.com/.