Blogs (1) >>
ASE 2019
Sun 10 - Fri 15 November 2019 San Diego, California, United States
Wed 13 Nov 2019 11:20 - 11:40 at Cortez 2&3 - Program Repair Chair(s): Yingfei Xiong

This paper presents InFix, a technique for automatically fixing erroneous program inputs for novice programmers. Unlike comparable existing approaches for automatic debugging and maintenance tasks, InFix repairs input data rather than source code, does not require test cases, and does not require special annotations. Instead, we take advantage of patterns commonly used by novice programmers to automatically create helpful, high quality input repairs. InFix iteratively applies error-message based templates and random mutations based on insights about the debugging behavior of novices. This paper presents an implementation of InFix for Python. We evaluate on 29,995 unique scenarios with input-related errors collected from four years of data from Python Tutor, a free online programming tutoring environment. Our results generalize and scale; compared to previous work, we consider an order of magnitude more unique programs. Overall, InFix is able to repair 94.5% of deterministic input errors. We also present the results of a human study with 97 participants. Surprisingly, this simple approach produces high quality repairs; humans judged the output of InFix to be equally helpful and within 4% of the quality of human-generated repairs.

Wed 13 Nov

10:40 - 12:20: Papers - Program Repair at Cortez 2&3
Chair(s): Yingfei XiongPeking University
ase-2019-papers10:40 - 11:00
Apricot: A Weight-Adaptation Approach to Fixing Deep Learning Models
Hao ZhangCity University of Hong Kong, Wing-Kwong ChanCity University of Hong Kong, Hong Kong
ase-2019-papers11:00 - 11:20
Re-factoring based Program Repair applied to Programming Assignments
Yang HuThe University of Texas at Austin, Umair Z. AhmedNational University of Singapore, Sergey MechtaevUniversity College London, Ben LeongNational University of Singapore, Abhik RoychoudhuryNational University of Singapore
ase-2019-papers11:20 - 11:40
InFix: Automatically Repairing Novice Program Inputs
Madeline EndresUniversity of Michigan, Georgios SakkasUniversity of California, San Diego, Benjamin CosmanUniversity of California at San Diego, USA, Ranjit JhalaUniversity of California, San Diego, Westley WeimerUniversity of Michigan
ase-2019-Journal-First-Presentations11:40 - 12:00
Astor: Exploring the Design Space of Generate-and-Validate Program Repair beyond GenProg
Matias MartinezUniversité Polytechnique Hauts-de-France, Martin MonperrusKTH Royal Institute of Technology
ase-2019-Demonstrations12:00 - 12:10
PraPR: Practical Program Repair via Bytecode Mutation
Ali GhanbariThe University of Texas at Dallas, Lingming ZhangThe University of Texas at Dallas
ase-2019-papers12:10 - 12:20
Understanding Automatically-Generated Patches Through Symbolic Invariant Differences
Padraic CashinArizona State University, Cari MartinezUniversity of New Mexico, Stephanie ForrestArizona State University, Westley WeimerUniversity of Michigan