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.
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
Concurrency with Go
Frank Müller
Concurrency in Python
Fabian Schindler
The Design and Evolution of C++
Bjarne Stroustrup
Java's Project Loom & Co - the end for reactive programming?
Jan Weinschenker
C++ in constrained environments
Bjarne Stroustrup
Is your backend a hodgepodge of queues, event stores and cron jobs? Durable Execution to the Rescue.
Maxim Fateev
Introduction and pitfalls of Java's new concurrency model
David Vlijmincx
Is reactive the new black? Imperative vs. reactive programming with Quarkus
Tatiana Chervova
Related Articles
View all articles.gif?w=240&auto=compress,format)

.jpg?w=240&auto=compress,format)

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

DL Remote
Köln, Germany
Remote
€90K
Senior
Kotlin
TypeScript
AWS Lambda
+1



CONTIAMO GMBH
Berlin, Germany
Senior
Python
Docker
TypeScript
PostgreSQL



PROSOZ Herten GmbH
Herten, Germany
Junior
Intermediate
Senior
Java
Scrum
Kotlin
Microservices


Saby New Compy
Bielefeld, Germany
Intermediate
Java
Docker
Kotlin
Groovy
Node.js
+2