On Fri, Dec 3, 2021 at 4:22 AM Nicholas Cole <nicholas.c...@gmail.com> wrote:
> There is nothing that this proposal makes possible that is not already
> possible with more explicit code.

It's worth noting that "explicit" does not mean "verbose". For
instance, this is completely explicit about what it does:

x += 1

It does not conceal what it's doing, yet it uses a very compact
notation to say "augmented addition". The proposal in question uses an
explicit symbol to indicate that the default should be late-bound.

In contrast, a less explicit and much worse proposal might be: "If the
argument default defines a mutable object, construct a new one every
time", so "def f(x=1):" would be early bound and "def f(x=[]):" would
be late-bound. This is implicit behaviour, since it's not stated in
the code which one is which.

ChrisA
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at 
https://mail.python.org/archives/list/python-ideas@python.org/message/L6PTUVZ33N3EHVCLEGDCDOMB7XGIJRRQ/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to