[Python-Dev] assignment expressions: an alternative proposal (original) (raw)

Nick Coghlan ncoghlan at gmail.com
Tue Apr 24 09:46:34 EDT 2018


On 24 April 2018 at 23:38, Yury Selivanov <yselivanov.ml at gmail.com> wrote:

I propose to use the following syntax for assignment expressions:

( NAME = expr ) I know that it was proposed before and this idea was rejected, because accidentally using '=' in place of '==' is a pain point in C/C++/JavaScript. That said, I believe we can still use this syntax as long as we impose the following three restrictions on it: 1. Only NAME token is allowed as a single target. 2. Parenthesis are required. 3. Most importantly: it is not allowed to mask names in the current local scope.

While I agree this would be unambiguous to a computer, I think for most humans it would be experienced as a confusing set of arcane and arbitrary rules about what "=" means in Python.

Cheers, Nick.

-- Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia



More information about the Python-Dev mailing list