[squeak-dev] The Trunk: Kernel-pre.1105.mcz

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Mon May 22 12:04:41 UTC 2017


2017-05-19 15:16 GMT+02:00 Rein, Patrick <Patrick.Rein at hpi.de>:

> Regarding the headerFlagForEncoder: method: I only wanted to make the
>
> code easier to understand. I have no experience with the CompiledCode
>
> and Encoder classes and did not want to break anything there.
>
>
> Nevermind, I overlooked the code.
There is no other way than isKindOf: because PrimaryBytecodeSetEncoderClass
is a class variable that can be changed dynamically to point to another
BytecodeEncoder class.
If we would want to support doing it by message sending, it would mean
compiling and installing/uninstalling messages like isPrimaryEncoderClass
dynamically.
Overkill.

Regarding the two commits: I should have ignored the change... I have now
>
> moved the commit in the Inbox to the Treated Inbox. The change is still
>
> open for discussion though :)​
>
>
> I have this selector in all my images for 30 years or so, if we think of
biased as disqualified, I'm disqualified ;)

> ------------------------------
> *From:* Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> on
> behalf of Nicolas Cellier <nicolas.cellier.aka.nice at gmail.com>
> *Sent:* Friday, May 19, 2017 14:32
> *To:* The general-purpose Squeak developers list
> *Subject:* Re: [squeak-dev] The Trunk: Kernel-pre.1105.mcz
>
>
>
> 2017-05-19 14:22 GMT+02:00 <commits at source.squeak.org>:
>
>> Patrick Rein uploaded a new version of Kernel to project The Trunk:
>> http://source.squeak.org/trunk/Kernel-pre.1105.mcz
>>
>> ==================== Summary ====================
>>
>> Name: Kernel-pre.1105
>> Author: pre
>> Time: 19 May 2017, 2:22:29.00196 pm
>> UUID: 7e22498c-7586-584c-a2a9-81331c572590
>> Ancestors: Kernel-pre.1104
>>
>> Removes a redundancy in CompiledCode.
>>
>> =============== Diff against Kernel-nice.1103 ===============
>>
>> Item was changed:
>>   ----- Method: CompiledCode class>>headerFlagForEncoder: (in category
>> 'method encoding') -----
>>   headerFlagForEncoder: anEncoder
>> -       anEncoder class == PrimaryBytecodeSetEncoderClass ifTrue:
>> -               [^0].
>> -       anEncoder class == SecondaryBytecodeSetEncoderClass ifTrue:
>> -               [^SmallInteger minVal].
>>         "This allows subclasses for compiler variants such as the
>> ScriptEncoder in EToys
>>          to continue to function."
>> +       (anEncoder isKindOf: PrimaryBytecodeSetEncoderClass) ifTrue:
>> -       (anEncoder class inheritsFrom: PrimaryBytecodeSetEncoderClass)
>> ifTrue:
>>                 [^0].
>> +       (anEncoder isKindOf: SecondaryBytecodeSetEncoderClass) ifTrue:
>> -       (anEncoder class inheritsFrom: SecondaryBytecodeSetEncoderClass)
>> ifTrue:
>>                 [^SmallInteger minVal].
>>         self error: 'The encoder is not one of the two installed bytecode
>> sets'!
>>
>> Then why not send a message back to anEncoder?
> Way more efficient than testing classes sequentially and recursively...
>
>
>> Item was added:
>> + ----- Method: Number>>** (in category 'mathematical functions') -----
>> + ** aNumber
>> +
>> +       ^ self raisedTo: aNumber!
>>
>> Above change can't both be waiting in inbox and be commited to trunk
>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20170522/2acdd654/attachment.html>


More information about the Squeak-dev mailing list