[Python-Dev] Python 2.3a1's mandatory use of cyclic GC causes existing applications to fail

Christian Tismer tismer@tismer.com
Wed, 05 Feb 2003 17:47:02 +0100


Michael Hudson wrote:
> Robert Ledwith <rledwith@cas.org> writes:
> 
> 
>>I do not believe my experiences will prove to be unique among the Python
>>community.  Given this possibility, is it desirable to re-insert the
>>logic to make the cyclic GC optional now, heading off potential problems
>>that would surface only months from now, once Python 2.3 is officially rolled
>>out and installed worldwide?
> 
> 
> I'm not fully aware of all the issues, but I think that the
> interaction between the sometimes-there-sometimes-not gc code and the
> trashcan facility for safely deallocating deeply nested structures was
> deeply confusing and was a motivation for making the GC code
> non-optional.
> 
> So desirable or not, re-adding --without-cycle-gc may be *hard*.

I don't think so. When I read the latest CVS version,
I also stumbled on the new-born relationship between
trashcan and GC, but forgot to complain about it.
My original implementation abused the ob_type field
of the objects, which looked insane for some
developers.
But insane or not, I really dislike that for sanity,
GC is no longer an option. I know of many companies
(all my Stackless customers, for instance), who
would *never* switch to a Python version that needs
the GC.

Concerning the trashcan code, there is not so much
to change to make it independent from GC, again.
Some code does extra actions in order to prevend
interference, but it wouldn't hurt even to leave this in.
I'd be happy to help with that.

But if GC lost its optionality otherwise, too, I can't
estimate how much work that is.

cheers - chris
-- 
Christian Tismer             :^)   <mailto:tismer@tismer.com>
Mission Impossible 5oftware  :     Have a break! Take a ride on Python's
Johannes-Niemeyer-Weg 9a     :    *Starship* http://starship.python.net/
14109 Berlin                 :     PGP key -> http://wwwkeys.pgp.net/
work +49 30 89 09 53 34  home +49 30 802 86 56  pager +49 173 24 18 776
PGP 0x57F3BF04       9064 F4E1 D754 C2FF 1619  305B C09C 5A3B 57F3 BF04
      whom do you want to sponsor today?   http://www.stackless.com/