On Fri, Apr 20, 2018 at 2:04 PM, Chris Angelico <ros...@gmail.com> wrote:

> On Sat, Apr 21, 2018 at 6:59 AM, Guido van Rossum <gu...@python.org>
> wrote:
> > Does the PEP currently propose to *allow* that horrible example? I
> thought
> > Tim Peters successfully pleaded to *only* allow a single "NAME :=
> <expr>".
> > You don't have to implement this restriction -- we know it's possible to
> > implement, and if specifying this alone were to pull enough people from
> -1
> > to +0 there's a lot of hope!
> I don't see much value in restricting the assignment target to names
> only, but if that's what it takes, it can be restricted, at least
> initially.

All of this is an exercise in listening and compromise, not in solving

> As to chaining... well, since the entire construct (target
> := expr) is an expression, it can be used on the right of :=, so short
> of outright forbidding it, there's not a lot to be done.

It would be more work but it can definitely be done (perhaps by introducing
a syntactic construct of intermediate precedence). People could write "a :=
(b := foo())" but that way they resolve the ambiguity. Although if we
restrict targets to just names there's less concern about ambiguity.

--Guido van Rossum (python.org/~guido)
Python-Dev mailing list

Reply via email to