Write a Blog >>
Tue 11 Oct 2022 14:00 - 14:20 at Ballroom C East - Technical Session 5 - Code Analysis Chair(s): Vahid Alizadeh

Channel-based concurrency is a widely used alternative to shared-memory concurrency but is difficult to use correctly. Common programming errors may result in blocked threads that wait indefinitely. Recent work exposes this as a considerable problem in Go programs and shows that many such errors can be detected automatically using SMT encoding and dynamic analysis techniques.

In this paper, we present an alternative approach to detect such errors based on abstract interpretation. To curb the large state spaces of real-world multi-threaded programs, our static program analysis leverages standard pre-analyses to divide the given program into individually analyzable fragments. Experimental results on 6 large real-world Go program show that the abstract interpretation achieves good scalability and finds 104 blocking errors that are missed by the state-of-the-art tool GCatch.

Tue 11 Oct

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

14:00 - 15:30
Technical Session 5 - Code AnalysisTool Demonstrations / Research Papers / Journal-first Papers at Ballroom C East
Chair(s): Vahid Alizadeh DePaul University
14:00
20m
Research paper
Detecting Blocking Errors in Go Programs using Localized Abstract InterpretationACM SIGSOFT Distinguished Paper Award
Research Papers
Oskar Haarklou Veileborg Aarhus University, Georgian-Vlad Saioc Aarhus University, Anders Møller Aarhus University
Link to publication
14:20
10m
Demonstration
InvCon: A Dynamic Invariant Detector for Ethereum Smart Contracts
Tool Demonstrations
Ye Liu Nanyang Technological University, Yi Li Nanyang Technological University
Pre-print
14:30
20m
Paper
An empirical comparison of four Java-based regression test selection techniques
Journal-first Papers
Min Kyung Shin Colorado State University, Sudipto Ghosh Colorado State University, USA, Leo R. Vijayasarathy Colorado State University
Link to publication DOI
14:50
10m
Demonstration
Augur: Dynamic Taint Analysis for Asynchronous JavaScript
Tool Demonstrations
Mark W. Aldrich Tufts University, Alexi Turcotte Northeastern University, Matthew Blanco Northeastern University, Frank Tip Northeastern University
15:00
10m
Demonstration
FlexType: A Plug-and-Play Framework for Type Inference Models
Tool Demonstrations
Sivani Voruganti UC Davis, Kevin Jesse University of California at Davis, USA, Prem Devanbu Department of Computer Science, University of California, Davis
Pre-print
15:10
20m
Research paper
SelfAPR: Self-supervised Program Repair with Test Execution DiagnosticsVirtual
Research Papers
He Ye KTH Royal Institute of Technology, Matias Martinez Université Polytechnique Hauts-de-France, Xiapu Luo Hong Kong Polytechnic University, Tao Zhang Macau University of Science and Technology (MUST), Martin Monperrus KTH Royal Institute of Technology