[Vm-dev] primitives argument handling
btc at openinworld.com
Sat Aug 20 13:41:48 UTC 2016
Just checking my understanding of how something works. I think I
heard somewhere that its the primitive's job to drop its arguments off
So it would seem(??) that starting with VM1/Image1 having primitive
#primX ... if VM2 had modified that primitive to take an optional
argument such that Image2 invoked that primitive as #primX: , then
Image2 could not be backward compatible with VM, because Image2 would
be adding the argument to the stack that would not be removed by VM1.
The reason I ask is I was considering having a go at the VM clock
improvements issue  I logged. As well as implementing the clock
skewing algorithm Eliot suggested, I was also wanting to provide Image
access to the two clocks used by that algorithm - so the algorithm
performance could be monitored from the Image.
More information about the Vm-dev