Program Repair
47 papers with code • 3 benchmarks • 8 datasets
Task of teaching ML models to modify an existing program to fix a bug in a given code.
Datasets
Subtasks
Most implemented papers
C-Pack of IPAs: A C90 Program Benchmark of Introductory Programming Assignments
Due to the vast number of students enrolled in Massive Open Online Courses (MOOCs), there has been an increasing number of automated program repair techniques focused on introductory programming assignments (IPAs).
xCodeEval: A Large Scale Multilingual Multitask Benchmark for Code Understanding, Generation, Translation and Retrieval
Recently, pre-trained large language models (LLMs) have shown impressive abilities in generating codes from natural language descriptions, repairing buggy codes, translating codes between languages, and retrieving relevant code segments.
SequenceR: Sequence-to-Sequence Learning for End-to-End Program Repair
This paper presents a novel end-to-end approach to program repair based on sequence-to-sequence learning.
Neural Program Repair by Jointly Learning to Localize and Repair
We show that it is beneficial to train a model that jointly and directly localizes and repairs variable-misuse bugs.
Learning and Evaluating Contextual Embedding of Source Code
We fine-tune CuBERT on our benchmark tasks, and compare the resulting models to different variants of Word2Vec token embeddings, BiLSTM and Transformer models, as well as published state-of-the-art models, showing that CuBERT outperforms them all, even with shorter training, and with fewer labeled examples.
Graph-based, Self-Supervised Program Repair from Diagnostic Feedback
Second, we present a self-supervised learning paradigm for program repair that leverages unlabeled programs available online to create a large amount of extra program repair examples, which we use to pre-train our models.
Unified Pre-training for Program Understanding and Generation
Experiments on code summarization in the English language, code generation, and code translation in seven programming languages show that PLBART outperforms or rivals state-of-the-art models.
Exploring Plausible Patches Using Source Code Embeddings in JavaScript
Despite the immense popularity of the Automated Program Repair (APR) field, the question of patch validation is still open.
AutoCodeRover: Autonomous Program Improvement
Recent progress in Large Language Models (LLMs) has significantly impacted the development process, where developers can use LLM-based programming assistants to achieve automated coding.
RepairBench: Leaderboard of Frontier Models for Program Repair
The key characteristics of RepairBench are: 1) it is execution-based: all patches are compiled and executed against a test suite, 2) it assesses frontier models in a frequent and standardized way.