From: Trans Date: 2005-10-14T11:56:54+09:00 Subject: Re: Challenging Project ... Need a deep guru to provide enlightenment. Actually, I just went ahead and added a Proxy class to Facets (btw aka Nano Methods and Mega Modules). Very easy: require 'facet/blankslate' class Proxy < BlankSlate def initialize( obj ) @self = obj end def method_missing( sym, *args, &blk ) @self.__send__( sym, *args, &blk ) end end What's esspeically nice about this is you can still get to the Proxy itself. irb(main):001:0> require 'facet/proxy' => true irb(main):002:0> a = "Hello Dog" => "Hello Dog" irb(main):003:0> ap = Proxy.new( a ) => # irb(main):004:0> a.object_id => -606004354 irb(main):005:0> ap.object_id => -606004354 irb(main):006:0> ap.__meta__.object_id => -606009294 Have fun, T.