[Python-Dev] gc ideas -- sparse memory

James Y Knight foom at fuhm.net
Sat Dec 4 00:15:17 CET 2010


On Dec 3, 2010, at 6:04 PM, Terry Reedy wrote:
> gc is implementation specific. CPython uses ref counting + cycle gc. A constraint on all implementations is that objects have a fixed, unique id during their lifetime. CPython uses the address as the id, so it cannot move objects. Other implementations do differently. Compacting gc requires an id to current address table or something.

It's somewhat unfortuante that python has this constraint, instead of the looser: "objects have a fixed id during their lifetime", which is much easier to implement, and practically as useful.

James



More information about the Python-Dev mailing list