Automatically Preventing, Detecting, and Repairing Crucial Errors in Programs


Jialu Zhang


2024-04-15 14:00:00 ~ 2024-04-15 15:30:00






High-impact errors in programs cause huge money losses, are notoriously expensive for programmers to repair, and affect millions of real-world users. In this talk, I will highlight the need to move beyond our post-mortem, manual error handling to develop tools to automatically prevent, detect, and repair program errors. I will present my methods and findings on misconfiguration detection, merge conflict resolution, and feedback generation for errors in students’ programming assignments. The tools I have developed combine a variety of new techniques including program analysis, machine learning, and large language models. I will present my progress, and discuss the implications for the future of error detection and repair research.


Jialu Zhang is an assistant professor in the ECE department at the University of Waterloo. He obtained his PhD in Computer Science at Yale University advised by Ruzica Piskac. He develops tools to automatically prevent, detect, and repair high-impact errors in systems (misconfigurations), collaborative software development (merge conflicts and continuous integration errors), and most recently, CS Education (generating feedback for intro-level and competitive-level programming assignments). His tool development delivers practical impact. For example, the detected misconfigurations have been confirmed and resolved by the original developers on GitHub. Previously, he spent two summers at Microsoft Research (MSR) working with Shuvendu Lahiri, Sumit Gulwani, and Jose Cambronero.

© John Hopcroft Center for Computer Science, Shanghai Jiao Tong University

邮箱:jhc@sjtu.edu.cn 电话:021-54740299