On 01/28/2014 09:18 PM, Ethan Furman wrote:
On 01/28/2014 06:50 PM, Larry Hastings wrote:
I think the "times behaves differently when passed by name versus
passed by position" behavior falls exactly into this
category, and its advice on how to handle it is sound.
I don't agree with this. This is a bug. Somebody going through (for
example) a code review and making minor changes so the code is more
readable shouldn't have to be afraid that [inserting | removing] the
keyword in the function call is going to *drastically* [1] change the
behavior. I understand the need for a cycle of deprecation [2], but
not fixing it in 3.5 is folly.
It's a bug. But it's also a longstanding bug, having been a part of
Python since 2.7.
Python is the language that cares about backwards-compatibility--bugs
and all. If your code runs on version X.Y, it should run without
modification on version X.(Y+Z) where Z is a positive integer.
Therefore it would be inappropriate to remove the "times=-1 when passed
by keyword repeats indefinitely" behavior without at /least/ a full
deprecation cycle. Personally I'd prefer to leave the behavior in,
undocumented and deprecated, until Python 4.0.
//arry/
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com