Alejandro Serrano Mena
Researcher @ Kotlin Language Evolution, JetBrains
Alejandro has devoted most of its career to understanding, teaching, and improving programming languages, especially in the realm of functional programming. He currently works on the evolution of the Kotlin language at JetBrains and helps co-maintaining the Arrow library after spending a few years in the consultancy and training world. Before that, he was a PhD and lecturer at Utrecht University, working on compilers for functional languages. He has written "Functional Programming Ideas for the Curious Kotliner" and three other books about Haskell, and it's active in promoting functional programming patterns and formal methods.
Lifecycles, coroutines and scopes
Structured concurrency is one of the key ideas in the Kotlin language, ensuring correct and intuitive cancellation and supervision of jobs. In this talk we look at how these ideas translate when coroutines are introduced in other frameworks with their own lifecycles, like Spring services or Android applications.
Another way to think about this talk is a search for every usage of CoroutineScope in Kotlin libraries, and understand how that bridges the world of coroutines.
Jobs are not the only lifecycle-aware pattern in Kotlin. The Arrow library provides other two examples: resource management, and distributed transactions. By the end of the talk, you'll be able to see the commonalities, and have a better understanding of all those interfaces ending in Scope.