Fork me on GitHub
#core-async
<
2018-01-16
>
xiongtx19:01:38

Here’s a great video on Kotlin coroutines by the main developer: https://www.youtube.com/watch?v=_hfBv0a09Jc&amp;t=2422s I find many similarities w/ core.async that helped me understand the motivation behind concurrency and how core.async works. Like core.async, most of Kotlin’s concurrency is implemented as a library (IIUC only coroutines require a change to the runtime), so many similar design decisions seem to have been made. This related video explicitly lays out how suspending a block creates a continuation of the remaining operations: https://youtu.be/4W3ruTWUhpw. IIUC core.async uses a state machine instead of CPS, but conceptually I found this very helpful.

tbaldridge22:01:09

Yep, the CPS method was considered, but it does have GC implications