[Python-3000] exclusion feature for 2to3?

Guido van Rossum guido at python.org
Mon Jul 16 04:22:15 CEST 2007


On 7/15/07, Georg Brandl <g.brandl at gmx.net> wrote:
> In order to have a codebase run in 2.x and 3.x, via automated translated by
> 2to3, there should be some "exclusion feature" for single lines that tells
> the refactorer not to touch those lines.
>
> For example, if you have some object that still has an iteritems() method and
> keeps it, it'll have to stay the same during translation.
> Same goes, e.g., for methods named next(), has_key() etc.
>
> Most obvious would be a special comment, something like
>
> for x in curiousobject.iteritems():  # 2to3:keep
>      foo(x)
>
> Does that make sense?

Absolutely. (Were you in the audience of my keynote at EuroPython? I
believe I briefly mentioned the need for such a feature there. :-)

Can't say I have a good feeling for how to implement it yet, but it
should definitely be possible. Precise syntax to be done.

-- 
--Guido van Rossum (home page: http://www.python.org/~guido/)


More information about the Python-3000 mailing list