Write a Blog >>
SPLASH 2019
Sun 20 - Fri 25 October 2019 Athens, Greece
Mon 21 Oct 2019 11:00 - 11:30 at Room 3B - Language design and implementation Chair(s): Tetsuo Kamina

Concurrency control is difficult in JavaScript programs, where event race due to asynchronous computation is a major source of errors. While methods such as promises, cancellation tokens, and reactive programming each offer its own advantages in addressing this problem, none offers a complete solution.

In this work, we present an integrated solution for concurrency control of JavaScript using a library, arrowjs, which is based on the abstraction of arrows. Arrowjs uses continuation passing style to chain callbacks and it implicitly generates progress objects to manage concurrency. Arrowjs can implement a form of push-based reactive programming, where event streams are arrow loops communicating through shared memory. Arrowjs thus provides interoperability between thread-like callback chains and event streams with a uniform concurrency control mechanism.

Mon 21 Oct
Times are displayed in time zone: Beirut change

11:00 - 12:30: Language design and implementationREBLS at Room 3B
Chair(s): Tetsuo KaminaOita University
11:00 - 11:30
Talk
Concurrency Control of JavaScript with Arrows
REBLS
Tian ZhaoUniversity of Wisconsin-Milwaukee, Adam BergerUniversity of Wisconsin -- Milwaukee, Yonglun LiUniversity of Wisconsin -- Milwaukee
11:30 - 12:00
Talk
Towards a Statically Scheduled Parallel Execution of an FRP Language for Embedded Systems
REBLS
Yoshitaka SakuraiTokyo Institute of Technology, Takuo WatanabeTokyo Institute of Technology
DOI
12:00 - 12:30
Talk
Turning Unobservable into Unreachable: Dynamic Reactive Programming without Leaks
REBLS
David RichterTechnische Universität Darmstadt, Ragnar MogkTechnische Universität Darmstadt
File Attached