> >> How can this ever work? Aren't there always going to be some > >> incompatibilities which aren't covered by -3 or 2to3? Those will > >> require manual code changes which aren't 2.x compatible. > > Martin> Like which incompatibilities specifically? I'm not aware of any. > > Nothing specifically. I was simply under the impression that the conversion > couldn't be 100% from my reading, perhaps incorrectly, of the mailing list.
Depends on what you mean by "100%". The conversion is *always* 100% in the sense that it converts the complete program to a complete (perhaps inoperable) program. It will never ever drop pieces of source code, or refuse to convert them. (David just found a case where it did refuse processing, but these are bugs that can be fixed). So it converts *all* source code. It some times does that correctly, and sometimes incorrectly. It's difficult to talk about ratios here, I rather see "correct conversion" as a binary property: it's either correct, or it isn't. Talking in fractions of all Python programs in existence, along with all possible Python programs, conversion is certainly not correct for 100% of all programs. However, conversion is also not 0%, i.e, there are *some* programs for which conversion is correct. A modified SpamBayes might be one of them. Regards, Martin P.S. In case you are interested in a formal definition of "correct conversion", here is mine: Given a specification of a program, and a Python 2.x application conforming to that specification, the conversion is "correct" iff the resulting 3.x application still conforms to the specification. _______________________________________________ Python-3000 mailing list Python-3000@python.org http://mail.python.org/mailman/listinfo/python-3000 Unsubscribe: http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com