[Python-Dev] PEP 492: async/await in Python; version 4

Nathaniel Smith njs at pobox.com
Wed May 6 00:01:05 CEST 2015

On May 5, 2015 2:14 PM, "Guido van Rossum" <guido at python.org> wrote:
> In the PEP 492 world, these concepts map as follows:
> - Future translates to "something with an __await__ method" (and asyncio
Futures are trivially made compliant by defining Future.__await__ as an
alias for Future.__iter__);
> - "asyncio coroutine" maps to "PEP 492 coroutine object" (either defined
with `async def` or a generator decorated with @types.coroutine -- note
that @asyncio.coroutine incorporates the latter);
> - "either of the above" maps to "awaitable".

Err, aren't the first and third definitions above identical?

Surely we want to say: an async def function is a convenient shorthand for
creating a custom awaitable (exactly like how generators are a convenient
shorthand for creating custom iterators), and a Future is-an awaitable that
also adds some extra methods.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20150505/07e64950/attachment.html>

More information about the Python-Dev mailing list