Sun's HotSpot

Tim Rowledge rowledge at
Thu Oct 15 23:10:01 UTC 1998

On Thu 15 Oct, lex at wrote:

> It doesn't have to.  Suppose one does "A become: B".  The system could overwrite A wit
> h an "indirection object" which points to B; call it I(B).  Whenever the system sends 
> a message to the object that used to be A, it will see an I(B) sit
> ting there, and forward the message on to B.  
> The efficiency should be about that of using an indirection table for all objects, but
>  it would only take effect for objects that have had a "become:" done to them.
There is also the cost of a test everytime you might possibly find an
indirector. I'm sure I've read about some analysis of this sort of cost
somewhere - could it have been in Ungar's PhD thesis? Anybody know? Eliot, you
still have my copy, can you look and see :-)

Don't forget that the check would not only be during message sends, but
anywhere that an oop is 'dereferenced' which is in quite a lot of places.

How do I love thee?  My accumulator overflows.
Tim Rowledge:  rowledge at (w)  +1 (650) 842-6110 (w)
 tim at (h)  <>

More information about the Squeak-dev mailing list