On Fri, Aug 7, 2020 at 9:25 PM Edwin Zimmerman <edwin@211mainstreet.net> wrote:
On 8/7/2020 8:28 PM, Greg Ewing wrote:
>  I don't think anyone has the appetite for a Python 4 any
> time soon.
>
I'm included in "anyone" here.  From reading this list, it seems to me that "Python 4" is invoked as some folks favorite magical justification for proposing major breaking changes.  Python 3 works quite well, I think.  Non-breaking, incremental changes suite me much better that large breaking ones.  I have better things to do with my time than complete software rewrites of all the software projects I work on.

Nobody is asking you to rewrite anything in this thread. Quoting my first message:


On Tue, Aug 4, 2020 at 8:14 AM Ricky Teachey <ricky@teachey.org> wrote:

...

So here is the main question of this thread:

Is there really not a backwards compatible, creative way a transition to positional args from a tuple in the item dunders could not be accomplished?


That's what I'm after, and making a (likely poor) attempt at a proposal to accomplish. If the answer is no, fine.


On Fri, Aug 7, 2020 at 8:30 PM Greg Ewing <greg.ewing@canterbury.ac.nz> wrote:
...

It would certainly achieve that goal. The question is whether it would
be worth the *enormous* upheaval of replacing the whole __getitem__
protocol.

It's hard to overstate what a big deal that would be. The old protocol
would still be with us, complicating everything unnecessarily, for a
very long time. It took Python 3 to finally get rid of the __getslice__
protocol, and I don't think anyone has the appetite for a Python 4 any
time soon.

My hope-- with the proposal I made (new getx/setx/delx dunders that call the old getitem/setitem/delitem dunders)-- was to avoid most of that. Folks would be free to continue using the existing dunder methods as long as they find it to be beneficial. But maybe it wouldn't work out that way.

---
Ricky.

"I've never met a Kentucky man who wasn't either thinking about going home or actually going home." - Happy Chandler