On Wed, Apr 29, 2015 at 3:46 PM, Greg Ewing <greg.ew...@canterbury.ac.nz> wrote: > Yury Selivanov wrote: >> >> I'm not sure >> why Greg is pushing his Grammar idea so aggressively. > > > Because I believe that any extra complexity in the grammar > needs a very strong justification. It's complexity in the > core language, like a new keyword, so it puts a burden on > everyone's brain. > > Saying "I don't think anyone would ever need to write this, > therefore we should disallow it" is not enough, given that > there is a substantial cost to disallowing it. > > If you don't think there's a cost, consider that we *both* > seem to be having trouble predicting the consequences of > your proposed syntax, and you're the one who invented it. > That's not a good sign!
FWIW, now that I've seen the precedence table in the updated PEP, it seems really natural to me: https://www.python.org/dev/peps/pep-0492/#updated-operator-precedence-table According to that, "await" is just a prefix operator that binds more tightly than any arithmetic operation, but less tightly than indexing/funcall/attribute lookup, which seems about right. However, if what I just wrote were true, then that would mean that "await -foo" and "await await foo" would be syntactically legal (though useless). The fact that they apparently are *not* legal means that in fact there is still some weird thing going on in the syntax that I don't understand. And the PEP gives no further details, it just suggests I go read the parser generator source. My preference would be that the PEP be updated so that my one-sentence summary above became correct. But like Guido, I don't necessarily care about the exact details all that much. What I do feel strongly about is that whatever syntax we end up with, there should be *some* accurate human-readable description of *what it is*. AFAICT the PEP currently doesn't have that. -n -- Nathaniel J. Smith -- http://vorpus.org _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com