I\'ve never seen undef - or any thing else that allows you to undefine a method - in any other programming languages. Why is it needed in Ruby?
EDIT: I\'m not arguin
You can look at all of Rails for examples of defining methods at runtime (aka metaprogramming). By calling one method in your class definition, it can define a whole bunch of methods for all instances of that class...