From: "Neil Schemenauer" <nascheme@enme.ucalgary.ca> Date: Fri, 7 Apr 2000 22:17:50 -0600 To: python-list@python.org Subject: [ANNOUNCE] Garbage collection for Python Garbage collection for Python: http://www.enme.ucalgary.ca/~nascheme/python/gc.html I think I have all of the wrinkles ironed out of this patch. Reference cycles involving lists, tuples, instances, classes, dictionaries, and functions are found. Instances with __del__ methods are handled in a sane way. It is easy to add GC support to new types. GC enabled Python is binary compatible with regular Python. Generational collection works (currently three generations). The overhead measured by pybench is less than 1 percent and is not measurable with pystone (on my machine). Virually all extension modules should work unchanged (I had to modify new and cPickle in the standard distribution). A new module called gc is available for tuning the collector and setting debugging options. The collector should be portable across all platforms but I have only tested on my Linux machine. The patched version of Python passes all regression tests and runs Grail, Idle and Sketch without problems. The patch is against the current CVS version of Python. If enough people ask for a patch against the stable version of Python I will make one. Please send comments and bug reports. Neil -- "Simplicity does not precede complexity, but follows it." -- Alan Perlis