[squeak-dev] Re: [Vm-dev] Re: [Pharo-project] About ~= and ~~

Mariano Martinez Peck marianopeck at gmail.com
Wed Oct 12 17:47:07 UTC 2011


On Wed, Oct 12, 2011 at 7:29 PM, Eliot Miranda <eliot.miranda at gmail.com>wrote:

>
>
>
> On Wed, Oct 12, 2011 at 10:26 AM, Mariano Martinez Peck <
> marianopeck at gmail.com> wrote:
>
>>
>>
>>
>> On Wed, Oct 12, 2011 at 6:44 PM, Eliot Miranda <eliot.miranda at gmail.com>wrote:
>>
>>>
>>>
>>>
>>> On Wed, Oct 12, 2011 at 8:38 AM, Levente Uzonyi <leves at elte.hu> 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?
>>>
>>>
>>
>> with or without special bytecode associated?
>>
>
> Initially without.
>

+1


> Dynamic frequency is low, and primitive adds significant performance over
> the non-primitive version.  One could use the blockCopy: special bytecode
> but I'd wait until doing a complete bytecode set redesign.
>
>
>>
>>
>>
>>>
>>>>
>>>> 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
>>>
>>>
>>>
>>
>>
>> --
>> Mariano
>> http://marianopeck.wordpress.com
>>
>>
>>
>
>
> --
> best,
> Eliot
>
>
>


-- 
Mariano
http://marianopeck.wordpress.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20111012/f7057713/attachment.htm


More information about the Squeak-dev mailing list