2018
DOI: 10.1145/3296979.3192370
|View full text |Cite
|
Sign up to set email alerts
|

Putting in all the stops: execution control for JavaScript

Abstract: Scores of compilers produce JavaScript, enabling programmers to use many languages on the Web, reuse existing code, and even use Web IDEs. Unfortunately, most compilers inherit the browser's compromised execution model, so longrunning programs freeze the browser tab, infinite loops crash IDEs, and so on. The few compilers that avoid these problems suffer poor performance and are difficult to engineer. This paper presents Stopify, a source-to-source compiler that extends JavaScript with debugging abstractions a… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1

Citation Types

0
2
0

Year Published

2019
2019
2022
2022

Publication Types

Select...
2
1

Relationship

1
2

Authors

Journals

citations
Cited by 3 publications
(2 citation statements)
references
References 23 publications
0
2
0
Order By: Relevance
“…An alternative to CPS is implemented by Stopify [7], a JavaScript to JavaScript compiler that performs a transformation to allow pausing or interrupting JavaScript code execution before completion. Stopify aims at making JavaScript a better target for high-level languages.…”
Section: Related Workmentioning
confidence: 99%
“…An alternative to CPS is implemented by Stopify [7], a JavaScript to JavaScript compiler that performs a transformation to allow pausing or interrupting JavaScript code execution before completion. Stopify aims at making JavaScript a better target for high-level languages.…”
Section: Related Workmentioning
confidence: 99%
“…Instead, the RoboJS runtime allows students to write simple, straight-line programs (Figure 6b). Its APIs simulate blocking I/O on top of the web browser's non-blocking primitives by building on a tool called Stopify (Baxter et al 2018). Stopify is a source-to-source JavaScript compiler that simulates multiple, cooperative threads of execution in JavaScript.…”
Section: An In-browser Ide and Runtime For Robojsmentioning
confidence: 99%