[Enh][VM] primitiveApplyToFromTo for the heart of the enumeration of collections?

Klaus D. Witzel klaus.witzel at cobss.com
Sat Sep 16 19:39:36 UTC 2006


Hi Bryce,

I hope we both are now tired enough from your comparision of Exupery to  
the proposed primitiveApplyToFromTo.

You have not shown a convincing argument, in the sense that any other  
primitive has to be (and always was) treated the same way by the VM and  
undergoes the same performance penalties under the various CPUs. When we  
would believe you, only primitiveApplyToFromTo would slow down the CPU,  
the existing primitives wouldn't do that.

Of course you are absolutely correct by pointing with your finger to the  
additional instructions performed in #commonSend and #commonReturn and to  
the apparent incompatibility of proposed primitiveApplyToFromTo with  
Exupery's compiling technique (I took your words for granted, I'm not  
working with Exupery but with the standard VMMaker classes to which  
primitiveApplyToFromTo is not incompatible).

Your arguing for the status quo is way too conservative for a living  
community, there was a reason why people asked for speeding up enumeration  
of collections and also why it was suggested to consider the IBM approach  
#apply:from:to:.

Keeping the performance of #do: and friends at the unoptimized level was  
just the opposite of what the initiators of the original discussion where  
talking about, the question was for better solutions.

Honestly, I wish you good luck with Exupery. Always keep cool 8-)

I for my side have experienced the beauty, power and elegance of  
#commonSend and #commonReturn, the two most underestimated routines in a  
Smalltalk message sending VM :)

/Klaus




More information about the Squeak-dev mailing list