Write a Blog >>
ICSE 2022
Sun 8 - Fri 27 May 2022
Wed 11 May 2022 13:05 - 13:10 at ICSE room 1-odd hours - Programming Languages 3 Chair(s): Emma Söderberg
Thu 12 May 2022 04:10 - 04:15 at ICSE room 5-even hours - Programming Languages 1 Chair(s): Jean-Guy Schneider

Asynchronous JavaScript has become omnipresent, yet is inherently difficult to reason about. While many recent debugging tools are trying to address this issue with (semi-)automatic methods, interactive analysis tools are few and far between. To this date, developers are required to build mental models of complex concurrent control flows with little to no tool support. Thus, asynchrony is making life hard for novices and catches even seasoned developers off-guard, especially when dealing with unfamiliar code. That is why we propose the Asynchronous Call Graph. It is the first approach to capture and visualize concurrent control flow, as well as synchronization between multiple concurrent control flows in a call graph. It is also the first concurrency analysis tool for JavaScript that is fully interactive and integrated with an omniscient debugger in a popular IDE. First tests show that the ACG deals well with all three types of JS asynchronous events. It reveals hidden patterns when applied to classical problems of concurrent computing, as well as eleven popular real-world projects. Moreover, the ACG assisted us in finding a new bug in the sequelize ORM library. This tool has the potential to set a new standard for how developers can analyze asynchrony, not only in JavaScript but any of the languages observing similar asynchronous semantics.

Wed 11 May

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

13:00 - 14:00
13:00
5m
Talk
Grammars for Free: Toward Grammar Inference for Ad Hoc Parsers
NIER - New Ideas and Emerging Results
Michael Schröder TU Wien, Jürgen Cito TU Wien and Meta
Pre-print Media Attached
13:05
5m
Talk
An Asynchronous Call Graph for JavaScript
SEIP - Software Engineering in Practice
Dominik Seifert National Taiwan University, Michael Wan National Taiwan University, Jane Hsu National Taiwan University, Benson Yeh National Taiwan University
DOI Pre-print Media Attached
13:10
5m
Talk
Learning and Programming Challenges of Rust: A Mixed-Methods Study
Technical Track
Shuofei Zhu The Pennsylvania State University, Ziyi Zhang University of Wisconsin–Madison, Boqin Qin China Telecom Cloud Computing Corporation, Aiping Xiong The Pennsylvania State University, Linhai Song Pennsylvania State University, USA
DOI Pre-print Media Attached
13:15
5m
Talk
Towards Bidirectional Live Programming for Incomplete Programs
Technical Track
Xing Zhang Peking University, Zhenjiang Hu Peking University
Pre-print Media Attached
13:20
5m
Talk
Imperative versus Declarative Collection Processing: An RCT on the Understandability of Traditional Loops versus the Stream API in Java
Technical Track
Nils Mehlhorn , Stefan Hanenberg paluno – The Ruhr Institute for Software Technology, University of Duisburg-Essen, Essen
Pre-print Media Attached
13:25
5m
Talk
Garbage Collection Makes Rust Easier to Use: A Randomized Controlled Trial of the Bronze Garbage CollectorNominated for Distinguished Paper
Technical Track
Michael Coblenz University of Maryland at College Park, Michelle Mazurek University of Maryland, Michael Hicks University of Maryland at College Park
DOI Pre-print Media Attached

Thu 12 May

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

04:00 - 05:00
04:00
5m
Talk
Runtime Prevention of Deserialization Attacks
NIER - New Ideas and Emerging Results
François Gauthier Oracle Labs, Sora Bae Oracle Labs, Australia
DOI Pre-print Media Attached
04:05
5m
Talk
Grammars for Free: Toward Grammar Inference for Ad Hoc Parsers
NIER - New Ideas and Emerging Results
Michael Schröder TU Wien, Jürgen Cito TU Wien and Meta
Pre-print Media Attached
04:10
5m
Talk
An Asynchronous Call Graph for JavaScript
SEIP - Software Engineering in Practice
Dominik Seifert National Taiwan University, Michael Wan National Taiwan University, Jane Hsu National Taiwan University, Benson Yeh National Taiwan University
DOI Pre-print Media Attached
04:15
5m
Talk
Lowering Barriers to Application Development With Cloud-Native Domain-Specific Functions
SEIS - Software Engineering in Society
José Miguel Pérez-Álvarez NAVER LABS Europe, Adrian Mos NAVER LABS Europe, Benjamin V. Hanrahan Pennsylvania State University, Iyadunni J. Adenuga Pennsylvania State University
Pre-print Media Attached
04:20
5m
Talk
Towards Bidirectional Live Programming for Incomplete Programs
Technical Track
Xing Zhang Peking University, Zhenjiang Hu Peking University
Pre-print Media Attached
04:25
5m
Talk
Imperative versus Declarative Collection Processing: An RCT on the Understandability of Traditional Loops versus the Stream API in Java
Technical Track
Nils Mehlhorn , Stefan Hanenberg paluno – The Ruhr Institute for Software Technology, University of Duisburg-Essen, Essen
Pre-print Media Attached

Information for Participants
Wed 11 May 2022 13:00 - 14:00 at ICSE room 1-odd hours - Programming Languages 3 Chair(s): Emma Söderberg
Info for room ICSE room 1-odd hours:

Click here to go to the room on Midspace

Thu 12 May 2022 04:00 - 05:00 at ICSE room 5-even hours - Programming Languages 1 Chair(s): Jean-Guy Schneider
Info for room ICSE room 5-even hours:

Click here to go to the room on Midspace