well solving my own problem, i think the simplest way of doing this is 
probably

module M
  def foo
    puts M
    @old_foo.call
  end
end


class X
  def foo
    puts X
  end
  def ext
    @old_foo = method :foo
  end
end

class Y < X
  def foo
    puts Y
  end
end

anyway, still keen to hear any second opinions.


-- 
Posted via http://www.ruby-forum.com/.