ANN: Pyrex 0.4.3

François Pinard pinard at
Wed Aug 28 04:13:39 CEST 2002

[Skip Montanaro]

> Suppose we have two modules in our application, call them A and B, and
> that they both make use of the range() builtin.  Suppose also that we
> decide for whatever reason (debugging, perhaps?) that __builtin__.range()
> should be overridden.  Now, we decide that module B should be Pyrex-ified.
> Even though the Pyrex-generated version of module B still appears to use
> __builtin__.range(), it actually doesn't.  The semantics of the program
> have changed subtly.  This is likely not to be a big deal for most people,
> but may occasionally bite someone.

Granted.  In my case at least, when Pyrex-ifying "B", I would usually be
ready to fix the meaning of `range()'.  If for some reason, debugging or
otherwise, I am not ready to that, I would just let Pyrex do the ultra-safe
thing, that is, using the Python API all over for the slightest move...

But as Greg wrote a few minutes ago, this might be addressed either later
or much later.  So our discussion becomes a bit academical for now :-).

François Pinard

More information about the Python-list mailing list