On Tue, 16 Aug 2005 19:24:04 -0400, "Terry Reedy" <[EMAIL PROTECTED]> wrote:
> >"Bengt Richter" <[EMAIL PROTECTED]> wrote in message >news:[EMAIL PROTECTED] >> IOW, "...open the box and find the i'th item /in/ the box..." is not >> really >> finding the i'th item _itself_ "/in/" the box. It is finding one end of a >> string >> tied to some point /in/ the box, but the actual item/object is at the >> other end >> of the string, not /in/ the box, and many other strings may potentially >> also >> be leading to the same object, whether originating from anonymous >> structural >> binding points in other objects, or named binding points in >> name-tag-containing >> objects/namespaces. > >The way I think of it is that Python's collective objects are like club >rosters: one person (object) can be on many rosters. A container would be >like a room, and a person could only be in one room at a time. > Yes, the roster model works for me too, but I'm not sure I understand your concept of "container/room" ;-) I.e., at the Python object level, object representations themselves don't contain each other in the sense of the memory layout of nested C structs, UIAM? Obviously there are C structs for basic object representation information layout, but object-level parts are aggregated by reference via pointers rather than by memory adjacency (again UIAM). E.g., a list of floats is not an array of doubles in memory. It's not even a list of pointers to doubles in cpython, I believe, even though one could conceive of a form of object reference handle/pointers with type clues in the LSBs that could make pointing to a float object be represented exactly identically to a C pointer to double. (Since ints are much more commonly used that would be a waste though, I think, since you would want to use LSB bits to encode differentiation between the most common primitive types for special handling, and it would probably be nice to do simple integer arithmetic without needing to mask, but this is getting to other topics ;-) Regards, Bengt Richter -- http://mail.python.org/mailman/listinfo/python-list