Cyclops 0.9.4

Greg Ewing greg.ewing at compaq.com
Wed Jul 21 22:09:16 EDT 1999


Tim Peters wrote:
> 
> 2. Unless you're fighting a bug in the interpreter's reference-counting code
> (very rare), those groups of unreachable objects necessarily contain cycles.
> That's why Cyclops focuses on cycles.

I'm not sure that focusing on cycles is the right thing to
do, then. The cycles themselves aren't necessarily wrong;
what's wrong is the code that was meant to break them is
buggy. But you don't find that out until you leak memory.

I think the Python core needs an enhancement to allow
walking a list of all allocated objects. Cyclops in
conjuction with that would be very useful. Maybe a compile
time or run time option, since it would slow down 
allocation/deallocation a little bit.

> That's the mode it's being used in with IDLE now:  things *are* still
> reachable that nobody expects "should be" reachable.  What Cyclops can't do
> (yet <wink>) is tell you from *where* they can be reached.  All it can say
> for now is that they don't appear to be in cycles -- they're still reachable
> "for some other" reason.

So, again, cycles aren't really what you want to know about!

Greg




More information about the Python-list mailing list