New assignmens ...
avigross at verizon.net
Wed Oct 27 14:20:44 EDT 2021
I think anyone who suggests we should separate costs from benefits belongs
securely within the academic world and should remain there.
Practical things need to be built considering costs. Theoretical things,
sure, cost is not an issue.
Python is not only a real-world set of applications but an evolving one with
a huge embedded base. We have seen how hard it was for some to move when 2.X
and 3.X versions were not upward compatible. Some have refused to move. So
adding new features must not only be done carefully with an eye for path
upward but also to not destroy existing programs when possible. When a
change is needed, it is often done in stages with some things being
deprecated for a while before the change.
So the half-submerged walrus operator was added instead of the flying
walrus operator with anti-gravity built in. If the proposal had been to
allow EVERYTHING you and others are suggesting, it is quite possible we
would never have had anything changed and no walrus. True, in another decade
or so, they might have gotten around to adding the unrestricted walrus. or
What we have today is a path that may lead to more functionality
incrementally. If people are using the walrus and like it and it makes
coding easier AND they ask for more, it may come, at incremental cost.
From: Python-list <python-list-bounces+avigross=verizon.net at python.org> On
Behalf Of Antoon Pardon
Sent: Wednesday, October 27, 2021 2:59 AM
To: python-list at python.org
Subject: Re: New assignmens ...
Op 26/10/2021 om 00:24 schreef Chris Angelico:
> TBH, I don't think there's a lot of value in multiple-assignment,
> since it has a number of annoying conflicts of syntax and few viable
> use-cases. But if you have great examples of "x.y :=" or "x[y] :=",
> then by all means, post on python-ideas to propose widening the scope.
I think you should seperate the costs from the benefits. It is not because
the costs can be high there is little value.
And how do you count use cases? What about the following pattern:
while (a, b) := next_couple(a,b)[-1]:
Is that one use case or is that a use case for each kind of couple?
And even if the benefits are little per case, they can add up with every
occasion such a case pops up.
More information about the Python-list