On Wed, Oct 12, 2011 at 8:38 AM, Levente Uzonyi <[email protected]> wrote:
> On Wed, 12 Oct 2011, Clara Allende wrote: > > Hi guys, >> >> I'm wondering, why? >> >> ProtoObject>> ~~ anObject >> "Answer whether the receiver and the argument are not the same object >> (do not have the same object pointer)." >> >> self == anObject >> ifTrue: [^ false] >> ifFalse: [^ true] >> >> Instead of: >> ProtoObject>> ~~ anObject >> "Answer whether the receiver and the argument are not the same object >> (do not have the same object pointer)." >> >> ^(self == anObject) not >> >> And why? >> Object >> ~= anObject >> "Answer whether the receiver and the argument do not represent the >> same object." >> >> ^self = anObject == false >> >> Instead of >> Object>> ~= anObject >> "Answer whether the receiver and the argument do not represent the >> same object." >> >> ^(self = anObject) not. >> >> Is there any particular reason for this that I'm missing? >> > > Performance. > But better still is to add a ~~ primitive. I did this for VisualWorks. e.g. primitive 150 is free. why don't we use that for 1.4/4.3? > > > Levente > > Thanks in advance! >> -- >> >> "*Most good programmers do programming not because they expect to get paid >> or get adulation by the public, but because it is fun to program.*" >> >> Linus Torvalds >> >> > -- best, Eliot
