Two-bit oop tags (was: [SqF]Report of VI4 Project for Feb '02)

Jecel Assumpcao Jr jecel at merlintec.com
Sun Feb 3 08:03:15 UTC 2002


Self uses two bits for its tags: oops, small integers, floats and 
headers.

30 bit floating point numbers are probably not a good idea. They make 
people have to deal with rounding errors in nearly all applications 
while larger representations will let them get by in blissful ignorance 
most of the time.

The header tags speed up memory scanning operations. Instead of

         for each object
                for each word in object
                         is it what we are looking for?

you have

         for each word in memory
                is it what we are looking for?
         back up to previous header

Personally, I would keep the current 1 bit scheme. But if you think 
faster scanning is worth it, then Tim's 1, 00 and 10 encoding would be 
nice. They could be small int, oop and header respectively.

-- Jecel



More information about the Squeak-dev mailing list