ANN: Portable Garbage Collector For Python

xr pygc at freemail.hu
Wed Oct 6 02:43:57 EDT 1999


  WHAT IT IS

It is an experimental portable cooperative garbage collector for CPython 1.5.2.


  CURRENT STATUS

At the moment it is a developers only version.

Platforms that use the GNU configure script in their build process are
supported, for other platforms an update is needed to their build process.

Although the code should be fairly stable I do expect some bugs.


  FEATURES

Integrated into the build process (configure).

Can be called from Python code as sys.gc().

Can be used as a debugging tool to track down unreachable cycles.
In this case garbage objects are collected into the list sys.garbage
where they can be examined.

Can be used to [automatically] delete unreachable objects.

Selected types can keep the original reference counted behaviour although
deallocation of the objects might be delayed (usually only a little).

_tkinter is supported.

According to pybench-0.6 the modified interpreter is only about 30% slower 
than the original one built from py152.tgz.
After some optimization it can be (slightly?) faster.


  THINGS TO DO

Polish my English.

Write GOOD documentation that makes it possible to understand its internals.

Fix _tkinter: I expect some memory leaks there (have not tested thoroughly).

Add threading support (it should work, but it is not tested).

Update more modules.

Bring it up to date with the developer version in the CVS.


  HOW TO GET IT

The patch can be downloaded from the following URL:

    http://www.lib.bke.hu/~xr/pygc-0.1.tgz

The size of the file is approximately 50k.


  FEEDBACK

If you have ANY comments about the patch do not hesitate to write to the
address pygc at freemail.hu.

Bug reports are especially welcome.


  THANKS TO

the following people for their [mostly in]direct hints and ideas in 
the newsgroup.
    Aahz Maruch (aahz at netcom.com),
    Graham Matthews (graham at sloth.math.uga.edu),
    Greg Gritton (ggritton at ichips.intel.com),
    Guido van Rossum (guido at python.org),
    Samual M. Rushing (rushing at nightmare.com),
    Skip Montanaro (skip at calendar.com),
    Tim Peters (tim_one at email.msn.com),
    Vladimir Marangozov (Vladimir.Marangozov at inrialpes.fr),
    ??? (salvador at my-deja.com),
    and many more.





More information about the Python-list mailing list