From: Patrick May Date: 2004-06-28T13:03:29+09:00 Subject: Re: Is it considered Harmful? Gavin, On Sunday, June 27, 2004, at 10:40 PM, Gavin Sinclair wrote: > Austin Ziegler wrote: >> The only valuable form of object replacement, IMO, is >> replacing a proxy object with a real object. > > That sounds about right to me. Aren't there two separate issues here? > 'become', to me, means "become another **object**", not "change your > class". You're right, there was a bit of confusion. I just reviewed evil.rb, #become swaps instances of objects, it doesn't fiddle with the object's class. The two are really quite different. :-) > I don't even know what > > x = X.new > x.class = Y > > is supposed to mean. This is the part that I find absurd. A class isn't just a collection of methods (as a Module is); it's also the lifecycle of initialize. That's the reason I find #class= to be harmful [ruby-talk 104494] > But I do understand the idea behind this: > > x = X.new > y = Y.new > x.become y > > Are the two ideas really one and the same in this thread? They shouldn't be. I certainly mixed them up. My apologies; to be clear, my concern is with #class= and not #become. Cheers, Patrick