SPLASH 2021
Sun 17 - Fri 22 October 2021 Chicago, Illinois, United States
Wed 20 Oct 2021 13:50 - 14:05 at Zurich C - Onward! Paper Session 2 Chair(s): Christophe Scholliers
Wed 20 Oct 2021 21:50 - 22:05 at Zurich C - Onward! Paper Session 2 Chair(s): Hidehiko Masuhara

Asynchronous programming is having its “renaissance” moment in recent years. Created in the 1980s, it was in use for quite some time, but with the advent of multi-core processors, it has been sidestepped by multi-threaded programming, which was (for a long time) the de facto standard of performing concurrent computations. However, since the 2000s, more and more programming languages have began to include the support for asynchronous programming, some built around asynchronicity from the start, others including it later in their evolution.

In this paper, we explore the design and implementation of asynchronous programming in Kotlin, a multiplatform programming language from JetBrains, which uses coroutines for asynchronicity. Kotlin provides a compact built-in API for coroutine support, thus giving a lot of implementation freedom to the developer; this flexibility allows to transparently support different flavours of asynchronous programming within the same language.

We overview existing approaches to asynchronous programming, zoom in and talk about coroutines in detail, and describe how they are used in Kotlin as the basis for asynchronous computations. Along the way, we show the flexibility of Kotlin coroutines, highlight several existing problems with asynchronicity, how they are fixed or worked-around in Kotlin, and also mention future directions asynchronous programming might explore.

Wed 20 Oct

Displayed time zone: Central Time (US & Canada) change

13:50 - 15:10
Onward! Paper Session 2Onward! Papers at Zurich C +8h
Chair(s): Christophe Scholliers Universiteit Gent, Belgium
13:50
15m
Talk
Kotlin Coroutines: Design and ImplementationVirtual
Onward! Papers
Roman Elizarov JetBrains, Mikhail Belyaev JetBrains Research; St. Petersburg Polytechnic University, Marat Akhin JetBrains Research; St. Petersburg Polytechnic University, Ilmir Usmanov JetBrains
DOI
14:05
15m
Talk
Dala: A Simple Capability-Based Dynamic Language Design for Data Race-FreedomVirtual
Onward! Papers
Kiko Fernandez-Reyes Uppsala University, Isaac Oscar Gariano Victoria University of Wellington, James Noble Victoria University of Wellington, Erin Greenwood-Thessman Victoria University of Wellington, Michael Homer Victoria University of Wellington, Tobias Wrigstad Uppsala University, Sweden
DOI
14:20
15m
Talk
Motivating Complexity Understanding by Profiling Energy UsageVirtual
Onward! Papers
Joshua B. Gross California State University at Monterey Bay, Daniel Jacoby California State University at Monterey Bay, Kevin Coogan Hampton University, Aaron Helman California State University at Monterey Bay
DOI
14:35
15m
Talk
SkyQuery: An Aerial Drone Video Sensing PlatformVirtual
Onward! Papers
Favyen Bastani Massachusetts Institute of Technology, Songtao He Massachusetts Institute of Technology, Ziwen Jiang Massachusetts Institute of Technology, Osbert Bastani University of Pennsylvania, Sam Madden Massachusetts Institute of Technology
DOI
14:50
20m
Live Q&A
Discussion, Questions and Answers
Onward! Papers

21:50 - 23:10
Onward! Paper Session 2Onward! Papers at Zurich C
Chair(s): Hidehiko Masuhara Tokyo Institute of Technology
21:50
15m
Talk
Kotlin Coroutines: Design and ImplementationVirtual
Onward! Papers
Roman Elizarov JetBrains, Mikhail Belyaev JetBrains Research; St. Petersburg Polytechnic University, Marat Akhin JetBrains Research; St. Petersburg Polytechnic University, Ilmir Usmanov JetBrains
DOI
22:05
15m
Talk
Dala: A Simple Capability-Based Dynamic Language Design for Data Race-FreedomVirtual
Onward! Papers
Kiko Fernandez-Reyes Uppsala University, Isaac Oscar Gariano Victoria University of Wellington, James Noble Victoria University of Wellington, Erin Greenwood-Thessman Victoria University of Wellington, Michael Homer Victoria University of Wellington, Tobias Wrigstad Uppsala University, Sweden
DOI
22:20
15m
Talk
Motivating Complexity Understanding by Profiling Energy UsageVirtual
Onward! Papers
Joshua B. Gross California State University at Monterey Bay, Daniel Jacoby California State University at Monterey Bay, Kevin Coogan Hampton University, Aaron Helman California State University at Monterey Bay
DOI
22:35
15m
Talk
SkyQuery: An Aerial Drone Video Sensing PlatformVirtual
Onward! Papers
Favyen Bastani Massachusetts Institute of Technology, Songtao He Massachusetts Institute of Technology, Ziwen Jiang Massachusetts Institute of Technology, Osbert Bastani University of Pennsylvania, Sam Madden Massachusetts Institute of Technology
DOI
22:50
20m
Live Q&A
Discussion, Questions and Answers
Onward! Papers