I don't care for await await x. On Apr 28, 2015 6:53 PM, "Yury Selivanov" <yselivanov...@gmail.com> wrote:
> Looking at the grammar -- the only downside of the current approach is that > you can't do 'await await fut'. I still think that it reads better with > parens. If we put 'await' to 'factor' terminal we would allow > > await -fut # await (-fut) > > I think I something like > > power: atom_expr ['**' factor] > atom_expr: [AWAIT] atom_expr | atom_trailer > atom_trailer: atom trailer* > > will fix 'await await' situation, but does it really need to be fixed? > > Yury > > > > On 2015-04-27 9:44 AM, Yury Selivanov wrote: > >> Hi Greg, >> >> I don't want this: "await a() * b()" to be parsed, it's not meaningful. >> >> Likely you'll see "await await a()" only once in your life, so I'm fine >> to use parens for it (moreover, I think it reads better with parens) >> >> Yury >> >> >> On 2015-04-27 8:52 AM, Greg Ewing wrote: >> >>> Yury Selivanov wrote: >>> >>>> I've done some experiments with grammar, and it looks like >>>> we indeed can parse await quite differently from yield. Three >>>> different options: >>>> >>> >>> You don't seem to have tried what I suggested, which is >>> to make 'await' a unary operator with the same precedence >>> as '-', i.e. replace >>> >>> factor: ('+'|'-'|'~') factor | power >>> >>> with >>> >>> factor: ('+'|'-'|'~'|'await') factor | power >>> >>> That would allow >>> >>> await a() >>> res = await a() + await b() >>> res = await await a() >>> if await a(): pass >>> return await a() >>> print(await a()) >>> func(arg=await a()) >>> await a() * b() >>> >>> >> > _______________________________________________ > 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/guido%40python.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