Smalltalk gives to the programmer the illusion of uniformity for example SmallIntegers are defined as any other object but in memory they are different than objects. In that case the object pointer represents the SmallInteger
In the memory representation Smalltalk objects can be of
index type (e.g., #(1 2 3) at: 2 )
non-index type (e.g., aPacket name)
This difference is transparent for the programmer’s daily job, but if we want to do some optimizations, performance and memory analysis.... how can we compute the size in bytes of an object?