Free primitive indexes

David T. Lewis lewis at mail.msen.com
Sun Jul 15 15:09:12 UTC 2007


On Sat, Jul 14, 2007 at 02:42:07AM +0300, sig wrote:
> Hello, squeak-dev,
> 
> I found, that numeric primitive table in squeak have many gaps, filled
> with 'primitiveFail', and with comments like 'no longer used' and
> other..
> Id like to use one of the slots, but have no idea, what number is
> really safe for use?

You should follow Tim's advice, but to answer your question directly:

Recent Squeak versions have lost all of the version history associated
with the interpreter and object memory (and lots of other things as well).
Nevertheless, you can still download an older version of Squeak and simply
compare the #initializePrimitiveTable method to a current one and see
what has changed. That will give you a good idea of what primitive
numbers have actually be used over the course of the last eight years
or so.

For example, I just downloaded Squeak 2.4c (a good solid release from
1999) from ftp.squeak.org. I ran it under a new VM (64 bit Linux VM on
AMD actually). Not everything works properly, but it's easily good enough
for browsing the old image and seeing what's different. The files I
looked at are here:
  http://ftp.squeak.org/2.4/Squeak2.4c.image.gz
  http://ftp.squeak.org/2.4/Squeak2.4c.changes.gz
  http://ftp.squeak.org/2.0/SqueakV2.sources.gz

The #initializePrimitiveTable in Squeak 2.4c contains an initial
version (from John Malony, April 1999) plus one update by Andreas
Raab (May 1999). If you want more version history that this, you can
try downloading a more recent Squeak and find something that still
has the VM in the image (i.e. prior to VMMaker being split off as
a separate package). After that point, you would need to look at
the VMMaker versions to see what changes have occurred.

Dave




More information about the Squeak-dev mailing list