From: Philipp Hofmann Date: 2008-04-25T06:26:22+09:00 Subject: some metaprogramming with define_method Hello, I was hoping that the following snippet would output test_method instead it raises an 'undefined method'. module Proxy def self.append_features(mod) mod.extend(ClassMethods) end module ClassMethods def proxy_method(name) self.class.send(:define_method, name) { puts "called #{name}" } end end end class ProxyTest include Proxy proxy_method :test_method end proxy = ProxyTest.new proxy.test_method Any hints greatly appreciated. g phil