[squeak-dev] The Inbox: Collections-nice.891.mcz

K K Subbu kksubbu.ml at gmail.com
Sun May 3 04:50:38 UTC 2020


On 02/05/20 5:41 pm, commits at source.squeak.org wrote:
> Nicolas Cellier uploaded a new version of Collections to project The Inbox:
> http://source.squeak.org/inbox/Collections-nice.891.mcz
> 
> ==================== Summary ====================
> 
> Name: Collections-nice.891
> Author: nice
> Time: 2 May 2020, 7:40:45.298967 pm
> UUID: 08510be0-8293-6744-959d-c1d41bc13ae1
> Ancestors: Collections-nice.890
> 
> Experimental - For discussion
> 
> Group some (most) non-pointers collections under an abstract FixedBitWifthArray.
> I know, the name is hard to pronounce and thus ugly: it's opened to discussion.
> 
> This enables factorization of some methods, for example the trick for atAllPut:
> Also notice that most methods are shared between FloatArray and Float64Array.

How about ImmediateWord/ImmediateObject and an ImmediateArray (an array 
consisting only of Immediate elements)? It would be consistent with 
isImmediateClass method.

An object chunk could be checked at loading time to see if it needs to 
be converted from immediate to pointers or vice versa. In the typical 
case, this will be a nop. But if the image is moved to a different host 
type (say from 64b to 32b or from x86 to ARM), then some immediate 
numbers may be converted into pointers or vice versa. If this increases 
loading time for large images, then the image may be saved locally.

This is just a strawman. I haven't really thought through all its 
implications.

Regards .. Subbu


More information about the Squeak-dev mailing list