On 01/31/2014 07:23 PM, Larry Hastings wrote:
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.

So we only fix bugs that don't work at all?  By which I mean, if the 
interpreter doesn't crash, we don't fix it?


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.

Well, at least we are agreed on a deprecation cycle.  :)

--
~Ethan~
_______________________________________________
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

Reply via email to