[Python-Dev] Death to WITH_CYCLE_GC
M.-A. Lemburg
mal@lemburg.com
Wed, 03 Jul 2002 22:36:27 +0200
Tim Peters wrote:
> [M.-A. Lemburg]
>
>>Hmm, isn't the idea of having compile time options to give
>>people a chance to eliminate the feature altogether ?
>
>
> That may be idea for some symbols; e.g., I suppose HAVE_UNICODE is of that
> nature, although PythonLabs never tests with that disabled either.
>
> WITH_CYCLE_GC wasn't of that nature. Like pymalloc before it, cyclic gc was
> *thought* to be such a large change that it would be prudent to leave cyclic
> gc off for a release, but give adventurous people a symbol they could use to
> try it. WITH_CYCLE_GC was enabled by default in the first alpha release to
> get it some exercise. That didn't turn up any significant problems, so we
> left it on in the next alpha release too. Still no problems, so we left it
> on for all the alphas releases. Still no problems, so we left it on for all
> the beta releases. Still no problems, so we concluded "screw this, let's
> leave it enabled for the final release too". So the purpose for which
> WITH_CYCLE_GC was introduced went away before anyone had a chance to use it
> for that purpose.
Fine.
>>I'm thinking in terms of memory footprint of the running
>>interpreter and its binary. Platforms like e.g. Palm
>>or Pocket PC are very touchy about this. Embedded devices
>>even more.
>
>
> I don't buy this. I don't work on embedded devices in this incarnation, and
> from what I've seen the people who do aren't helped at all by people who
> don't guessing about what they might need. If people on embedded devices
> need help in the core, they can speak for themselves, and get the help they
> *really* need.
Then why do we have a switch to optionally remove the Unicode
support ? or for disabling interning of strings ? or for
caching small integers ?
>>How much memory footprint would removing the #ifdefs
>>cause on average ?
>
>
> 6, give or take.
6 what ? snakes, rabbits, swallows ?
I'm missing a concise concept here :-)
If you want to make life hard for people who want to customize
the interpreter, then you should remove *all* such #ifdefs. If
not, then having the #ifdefs adds important meta-information
to the code.
--
Marc-Andre Lemburg
CEO eGenix.com Software GmbH
_______________________________________________________________________
eGenix.com -- Makers of the Python mx Extensions: mxDateTime,mxODBC,...
Python Consulting: http://www.egenix.com/
Python Software: http://www.egenix.com/files/python/