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
16:04 MIN
Simplifying concurrency with structured coroutines
Moving from Java to Kotlin
09:38 MIN
Using Kotlin Coroutines to simplify complex reactive code
Back(end) to the Future: Embracing the continuous Evolution of Infrastructure and Code
16:54 MIN
Asynchronous programming with futures and isolates
Dart - a language believed dead, experiences a new bloom
46:13 MIN
Audience Q&A on Kotlin features and learning resources
Route from Java to Kotlin
29:07 MIN
Concurrency support from memory models to coroutines
The Design and Evolution of C++
17:31 MIN
Comparing the performance and scalability of different approaches
Back(end) to the Future: Embracing the continuous Evolution of Infrastructure and Code
20:38 MIN
Overcoming thread limitations with event-driven programming
Concurrency in Python
43:51 MIN
How the Future trait enables a flexible async ecosystem
Eternal Sunshine of the Spotless Programming Language
Featured Partners
Related Videos
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
Is your backend a hodgepodge of queues, event stores and cron jobs? Durable Execution to the Rescue.
Maxim Fateev
C++ in constrained environments
Bjarne Stroustrup
Introduction and pitfalls of Java's new concurrency model
David Vlijmincx
From learning to earning
Jobs that call for the skills explored in this talk.








