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

Bidirectional live programming not only allows software developers to see continuous feedback on the output as they write the program, but also allows them to modify the program by directly manipulating the output, so that the modified program can get the output that was directly manipulated. Despite the appealing of existing bidirectional live programming systems, there is a big limitation: they cannot deal with incomplete programs where code blanks exist in the source programs.

In this paper, we propose a framework to support bidirectional live programming for incomplete programs, by extending the output value structure, introducing hole binding, and formally defining bidirectional evaluators that are well-behaved. To illustrate the usefulness of the framework, we realize the core bidirectional evaluations of incomplete programs in a tool called Bidirectional Preview. Our experimental results show that our extended backward evaluation for incomplete programs is as efficient as that for complete programs in that it is only $21ms$ slower on a program with $10$ holes than that on its full program, and our extended forward evaluation makes no difference. Furthermore, we use quick sort and student grades, two nontrivial examples of incomplete programs, to demonstrate its usefulness in algorithm teaching and program debugging.

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