PEP 236: Back to the __future__

David Bolen db3l at fitlinxx.com
Tue Feb 27 20:13:05 EST 2001


wunschname at kapet.de (Karsten Petersen) writes:

> If I upgrade to 2.0, I will have to recompile all C modules, check
> everything if it still runs and so on.  (...)

I believe that so far recompilation and/or relinking has been about
it.  Existing C extension code should have run into very little (if
any) incompatibilities at the source API level.

> It is possible to compile C sources that were written in the 80s.

Right - "compile" (and or recheck).  That's the nature of using C, and
also impacts C extensions for Python, but that's one of the tradeoffs
(recompilation) of using C extensions rather than Python itself.

> It is possible to run (more or less simple) Perl programs which are
> several years old.

And you could likely same the same thing about Python scripts (note,
Python, not C extensions) as well.

Don't get me wrong - in a production environment and with a production
language I think that transitions must absolutely be clean and
backwards compatibility extremely important.  But you also can't avoid
all change entirely, and I think that recent Python events have been
very good at maintaining existing behavior.

I am however, more willing to accept some additional burden on C level
extensions over the course of time, simply because by their nature
they are lower level and subject to many of the C-based constraints
(binary compatibility, Windows DLL loading, etc...) that the pure
Python source is not.

On my own machine, I've kept up with Python 2.0 and now 2.1, but in my
production environment and deployed base it's still Python 1.5.2.
Some of that delay is ensuring all the extensions I like are
available, and some of it is just the hurdle of the deployment.  But I
don't really feel that Python has moved too quickly yet, and I'm
comfortable that my Python scripts themselves (from testing them on my
machine with 2.0 and 2.1) will survive the transition when it does
come with hardly a burp.

--
-- David
-- 
/-----------------------------------------------------------------------\
 \               David Bolen            \   E-mail: db3l at fitlinxx.com  /
  |             FitLinxx, Inc.            \  Phone: (203) 708-5192    |
 /  860 Canal Street, Stamford, CT  06902   \  Fax: (203) 316-5150     \
\-----------------------------------------------------------------------/



More information about the Python-list mailing list