[Python-Dev] PEP 3000 and iterators
James Y Knight
foom at fuhm.net
Sun Sep 11 05:57:58 CEST 2005
On Sep 10, 2005, at 6:07 PM, Lisandro Dalcin wrote:
> I had that in mind when I wrote my post; changing types is not the
> way, that will not work. That is why I proposed __future__ (I really
> do not know very well the implementation details of that feature)
> because I think the parser/compiler can (magically) make the
> replacements, e.g. dict.items -> dict.iteritems for Py2.X series in
> codes *using* dicts . Do you think something like this could be
> implemented in a safer way?
>
No, that cannot work. However, there is a very obvious and trivial
solution. Do not remove dict.iteritems in Py 3.0. Py2.X programs
wishing forward compat can avoid dict.items and use instead
dict.iteritems. In Py3.0, dict.items becomes a synonym for
dict.iteritems and programs that don't care about compat with 2.X can
just use dict.items from then on. And everybody can be happy. A small
number of redundant methods is a small price to pay for compatibility.
James
More information about the Python-Dev
mailing list