English
Related papers

Related papers: ASTOR: Evolutionary Automatic Software Repair for …

200 papers

Many techniques for automated program repair involve syntactic program transformations. Applying combinations of such transformations on faulty code yields fix candidates whose correctness must be determined. Exploring these combinations…

Automated Program Repair (APR) is a fast growing area with numerous new techniques being developed to tackle one of the most challenging software engineering problems. APR techniques have shown promising results, giving us hope that one day…

Software Engineering · Computer Science 2021-06-09 Aldeida Aleti , Matias Martinez

The increasing complexity of software has led to the steady growth of vulnerabilities. Vulnerability repair investigates how to fix software vulnerabilities. Manual vulnerability repair is labor-intensive and time-consuming because it…

Software Engineering · Computer Science 2025-06-16 Yiwei Hu , Zhen Li , Kedie Shu , Shenghua Guan , Deqing Zou , Shouhuai Xu , Bin Yuan , Hai Jin

Automatic Program Repair (APR) is a brilliant idea: when detecting a bug, also provide suggestions for correcting the program. Progress towards that goal is hindered by the absence of a common frame of reference for the multiplicity of APR…

Software Engineering · Computer Science 2025-02-28 Victoria Kananchuk , Ilgiz Mustafin , Bertrand Meyer

Providing feedback on programming assignments is a tedious task for the instructor, and even impossible in large Massive Open Online Courses with thousands of students. Previous research has suggested that program repair techniques can be…

Programming Languages · Computer Science 2018-06-21 Sumit Gulwani , Ivan Radiček , Florian Zuleger

Large language models such as Codex, have shown the capability to produce code for many programming tasks. However, the success rate of existing models is low, especially for complex programming tasks. One of the reasons is that language…

Software Engineering · Computer Science 2023-01-03 Zhiyu Fan , Xiang Gao , Martin Mirchev , Abhik Roychoudhury , Shin Hwei Tan

Automatic Program Repair (APR) endeavors to autonomously rectify issues within specific projects, which generally encompasses three categories of tasks: bug resolution, new feature development, and feature enhancement. Despite extensive…

Software Engineering · Computer Science 2024-09-24 Jiuang Zhao , Donghao Yang , Li Zhang , Xiaoli Lian , Zitian Yang , Fang Liu

The current article is an interdisciplinary attempt to decipher automatic program repair processes. The review is done by the manner typical to human science known as diffraction. We attempt to spot a gap in the literature of self-healing…

Software Engineering · Computer Science 2020-11-06 S. Amirhossein Mousavi , Donya Azizi Babani , Francesco Flammini

Automated program repair is a crucial task for improving the efficiency of software developers. Recently, neural-based techniques have demonstrated significant promise in generating correct patches for buggy code snippets. However, most…

Software Engineering · Computer Science 2023-05-17 Yuwei Zhang , Ge Li , Zhi Jin , Ying Xing

Bug-fix benchmarks are essential for evaluating methodologies in automatic program repair (APR) and fault localization (FL). However, existing benchmarks, exemplified by Defects4J, need to evolve to incorporate recent bug-fixes aligned with…

Software Engineering · Computer Science 2024-11-04 André Silva , Nuno Saavedra , Martin Monperrus

Context: Bug bisection is a common technique used to identify a revision that introduces a bug or indirectly fixes a bug, and often involves executing multiple revisions of a project to determine whether the bug is present within the…

Software Engineering · Computer Science 2024-05-06 Ching Hang Mak , Shing-Chi Cheung

Defects4J is a large, peer-reviewed, structured dataset of real-world Java bugs. Each bug in Defects4J is provided with a test suite and at least one failing test case that triggers the bug. In this paper, we report on an experiment to…

Software Engineering · Computer Science 2015-12-24 Matias Martinez , Thomas Durieux , Jifeng Xuan , Romain Sommerard , Martin Monperrus

Program translation refers to migrating source code from one programming language to another. It has tremendous practical value in software development, as porting software across languages is time-consuming and costly. Automating program…

Software Engineering · Computer Science 2023-05-08 Wasi Uddin Ahmad , Md Golam Rahman Tushar , Saikat Chakraborty , Kai-Wei Chang

AI coding assistants like GitHub Copilot are rapidly transforming software development, but their safety remains deeply uncertain-especially in high-stakes domains like cybersecurity. Current red-teaming tools often rely on fixed benchmarks…

Cryptography and Security · Computer Science 2025-08-07 Xiangzhe Xu , Guangyu Shen , Zian Su , Siyuan Cheng , Hanxi Guo , Lu Yan , Xuan Chen , Jiasheng Jiang , Xiaolong Jin , Chengpeng Wang , Zhuo Zhang , Xiangyu Zhang

Due to the promising future of Automated Program Repair (APR), researchers have proposed various APR techniques, including heuristic-based, template-based, and constraint-based techniques. Among such classic APR techniques, template-based…

Software Engineering · Computer Science 2024-12-06 Chunqiu Steven Xia , Lingming Zhang

Automated program repair (APR) techniques have achieved conspicuous progress, and are now capable of producing genuinely correct fixes in scenarios that were well beyond their capabilities only a few years ago. Nevertheless, even when an…

Software Engineering · Computer Science 2026-04-28 Shifat Sahariar Bhuiyan , Abhishek Tiwari , Yu Pei , Carlo A. Furia

Static analysis tools, or linters, detect violation of source code conventions to maintain project readability. Those tools automatically fix specific violations while developers edit the source code. However, existing tools are designed…

Software Engineering · Computer Science 2020-05-25 Yuki Ueda , Takashi Ishio , Akinori Ihara , Kenichi Matsumoto

Programming is increasingly taught using block-based languages like Scratch. While the use of blocks prevents syntax errors, learners can still make semantic mistakes, requiring feedback and help. As teachers may be overwhelmed by help…

Software Engineering · Computer Science 2025-04-18 Sebastian Schweikl , Gordon Fraser

Runtime Exceptions (REs) are an important class of bugs that occur frequently during code development. Traditional Automatic Program Repair (APR) tools are of limited use in this "in-development" use case, since they require a test-suite to…

Software Engineering · Computer Science 2022-02-11 Sonal Mahajan , Mukul R. Prasad

Program repair research has made tremendous progress over the last few years, and software development bots are now being invented to help developers gain productivity. In this paper, we investigate the concept of a " program repair bot "…

Software Engineering · Computer Science 2019-03-11 Simon Urli , Zhongxing Yu , Lionel Seinturier , Martin Monperrus