Mikhail Maslo
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.
envelio
Köln, Germany
Remote
Senior
Python
Software Architecture
Hubert Burda Media
München, Germany
€80-95K
Intermediate
Senior
JavaScript
Node.js
+1
Matching moments
03:26 MIN
Simplifying concurrency with structured coroutines
Moving from Java to Kotlin
04:35 MIN
Concurrency support from memory models to coroutines
The Design and Evolution of C++
03:46 MIN
Overcoming thread limitations with event-driven programming
Concurrency in Python
04:10 MIN
The evolution from threads to modern concurrency
Concurrency with Go
03:52 MIN
Defining concurrency, parallelism, and multitasking
Concurrency in Python
03:47 MIN
Exploring approaches to non-blocking software development
Java's Project Loom & Co - the end for reactive programming?
05:30 MIN
Concurrency as a natural model for software design
Concurrency with Go
05:04 MIN
Writing concurrent code with async and await
Concurrency in Python
Featured Partners
Related Videos
Is your backend a hodgepodge of queues, event stores and cron jobs? Durable Execution to the Rescue.
Maxim Fateev
Is reactive the new black? Imperative vs. reactive programming with Quarkus
Tatiana Chervova
Concurrency with Go
Frank Müller
Concurrency in Python
Fabian Schindler
The year 3000, a brief history of Web Development
Lorenzo Pieri
Java's Project Loom & Co - the end for reactive programming?
Jan Weinschenker
The Design and Evolution of C++
Bjarne Stroustrup
C++ in constrained environments
Bjarne Stroustrup
Related Articles
View all articles.gif?w=240&auto=compress,format)



From learning to earning
Jobs that call for the skills explored in this talk.

Code Healers LLC
Hinesville, United States of America
Remote
€40-50K
Intermediate
Senior
PHP
.NET
React
+2

Corriculo Ltd
Reading, United Kingdom
Remote
£80-120K
Senior
PHP
Linux
Python
+4

Corriculo Ltd
Birmingham, United Kingdom
Remote
£80-120K
Senior
PHP
Linux
Python
+4



Corriculo Ltd
Charing Cross, United Kingdom
Remote
£80-120K
Senior
PHP
Linux
Python
+4

Corriculo Ltd
Cambridge, United Kingdom
£25-35K
Junior
C++
Python
Matlab
Data analysis
+1

Corriculo Ltd
Birmingham, United Kingdom
£45-55K
API
CSS
REST
React
+2

Corus Systems & Consulting Group
Municipality of Madrid, Spain
Intermediate
CSS
GIT
AJAX
JIRA
Angular
+2