Mikhail Maslo

Coroutine explained yet again 60 years later

What if you could write asynchronous code that looks completely sequential? Discover how coroutines, a 60-year-old concept, finally solve callback hell.

Coroutine explained yet again 60 years later
#1about 1 minute

Celebrating the 60-year history of coroutines

Coroutines were first introduced 60 years ago by Melvin Conway in his work on a COBOL compiler to optimize its structure.

#2about 7 minutes

How coroutines suspend and resume using state machines

Unlike regular functions, coroutines can suspend their execution and resume later, a process managed internally by a state machine.

#3about 4 minutes

Comparing stackful and stackless coroutine models

Stackful coroutines have their own dedicated stack and can suspend from nested functions, while stackless coroutines save their state on the heap.

#4about 7 minutes

Exploring symmetric and asymmetric coroutine control flow

Asymmetric coroutines return control to their caller upon suspension, whereas symmetric coroutines can transfer control directly to another coroutine.

#5about 7 minutes

How coroutines fit into modern threading models

Coroutines function as lightweight user-level threads that are managed within a process, making them more memory-efficient than kernel threads.

#6about 5 minutes

Using coroutines to write linear asynchronous code

Modern languages use coroutines with async/await syntax to transform nested callbacks into linear, more readable code for I/O-bound operations.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

Related Articles

View all articles
DC
Daniel Cranney
Why Attend a Developer Event?
Modern software engineering moves too fast for documentation alone. Attending a world-class event is about shifting from tactical execution to strategic leadership. Skill Diversification: Break out of your specific tech stack to see how the industry...
Why Attend a Developer Event?

From learning to earning

Jobs that call for the skills explored in this talk.

Software Engineer

Code Healers LLC
Hinesville, United States of America

Remote
40-50K
Intermediate
Senior
PHP
.NET
React
+2
Programador/a Full Stack

Corus Systems & Consulting Group
Municipality of Madrid, Spain

Intermediate
CSS
GIT
AJAX
JIRA
Angular
+2