Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

I Live-Coded an Async Coroutine Framework in 32.5 Minutes

DZone's Guide to

I Live-Coded an Async Coroutine Framework in 32.5 Minutes

Gain a deep understanding of a miraculous new programming idiom in the Python 3 standard library called "asyncio"

Free Resource

Tips, tricks and tools for creating your own data-driven app, brought to you in partnership with Qlik.

Python 3's "asyncio" module is an efficient async framework similar to Node. But unlike Node, it emphasizes a modern idiom called "coroutines", rather than callbacks. Coroutines promise the best of two worlds: the efficiency of callbacks, but with a natural and robust coding style similar to synchronous programming.

In barely 30 minutes I live-coded a Python 3 async framework at PyGotham 2015. First, I showed how an async framework uses non-blocking sockets, callbacks, and an event loop. This version of the framework is very efficient, but callbacks make a mess of the code. Therefore, I implemented coroutines using Python generators and two classes called Future and Task, and updated my little framework to use coroutines instead of callbacks.

The live-coding demo isn't just a magic trick: watch to see how simply a coroutine-based async framework can be implemented, and gain a deep understanding of this miraculous new programming idiom in the Python 3 standard library.

My mind is blown by the speed and quality of Next Day Video's work at Python conferences. My undying gratitude for this recording of my PyGotham talk.

Explore data-driven apps with less coding and query writing, brought to you in partnership with Qlik.

Topics:
python ,python 3.0

Published at DZone with permission of A. Jesse Jiryu Davis, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}