Ruby Metaprogramming: Part II » RubySource
rubysource.com