[squeak-dev] Re: Burn the Squeak Image! (Why I am running for board)

Daniel Ingalls dan at Squeakland.org
Mon Mar 2 02:11:37 UTC 2009


Eliot Miranda <eliot.miranda at gmail.com> wrote...

> You're absolutely right.  The major image-level change I will  
> require is for Behavior to implement identityHash with a primitive  
> that is different form that in Object.  Doing this allows me to  
> implement a hidden class table in the VM where a class's identity  
> hash is the index into the class table.  An instance of a class has  
> the class's class table index (the class's id hash) stored in its  
> header, not a direct pointer to the class.  So every object has a  
> more compact class reference, say 16, 20 or 24 bits.  Also, class  
> references in in-line and method caches are class indices, not  
> direct class references, which means less work on GC.  But to ensure  
> a class can be entered in the table by the VM at an unused index  
> Behaviour>>identityHash must be a special primitive that the VM  
> implements as searching the table for an unused index.

Hi, Eliot -

I've been mostly lurking for a while here, but this topic has become  
more interesting with each tidbit.  I just wanted to say that I love  
the synergy between hash and class table rolled into the elimination  
of compact classes.  It's an improvement in every way.  I can't wait  
to see this all come to life.  You go, guy!

	- Dan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20090301/fc453fc1/attachment.htm


More information about the Squeak-dev mailing list