[Python-3000] Delayed reference counting idea
brian at sweetapp.com
Tue Sep 19 18:05:46 CEST 2006
Marcin 'Qrczak' Kowalczyk wrote:
> Brian Quinlan <brian at sweetapp.com> writes:
>>> Reference counting is inefficient, doesn't by itself handle cycles,
>>> and is impractical to combine with threads which run in parallel. The
>>> general consensus of modern language implementations is that a tracing
>>> GC is the future.
>> How is reference counting inefficient?
Do somehow know that tracing GC would be more efficient for typical
python programs or are you just speculating?
> It involves operations every time an object is merely passed around,
> as references to the object are created or destroyed.
But if the lifetime of most objects is confined to a single function
call, isn't reference counting going to be quite efficient?
> It doesn't move objects in memory, and thus free memory is fragmented.
OK. Have you had memory fragmentation problems with Python?
> Memory allocation can't just chop from from a single area of free memory.
> It can't allocate several objects with the cost of one allocation either.
I'm not sure what you mean here.
More information about the Python-3000