will python 3000 break my code?

Daniel Berlin dan at cgsoftware.com
Thu Mar 2 12:38:19 EST 2000


>>>>> "CH" == Charles Hixson <charleshixsn at earthlink.net> writes:

   CH> thus: foo.appendA_List(1, 2, 3) which would act the way in which
   CH> append has historically acted.  The deprecation would be fair warning
   CH> that it would be going away soon, and the ugly name would further
   CH> disincline folk to use it.  This should facilitate the automated
   CH> conversion of current code, and allow it to be corrected at a humane
   CH> rate.

Actually, while thinking if there was any way around having to do lots of
static analysis to be able to do this at compile time with just bytecode,
something came to me:

          You can automatically fix every instance of this on the fly if you
          can afford to take a performance loss.
(Yes, i know, i'm stupid, and should have realized it before).
Rather than just notify that the code needs to be fixed, you can
automatically, patch the bytecode to fix the problem, as it occurs.
The costs may seem prohibitive at first, but i ran a few tests and it's
really not.
In fact, most of the cost associated with determining the type at runtime and 
fixing the append call can be removed by a bit of smart optimization at
runtime.

--Dan
   | -- 
   | http://www.python.org/mailman/listinfo/python-list




More information about the Python-list mailing list