Program Repair
36 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.
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.
DeepFix: Fixing Common C Language Errors by Deep Learning
The problem of automatically fixing programming errors is a very active research topic in software engineering.
Dynamic Neural Program Embedding for Program Repair
Evaluation results show that our new semantic program embedding significantly outperforms the syntactic program embeddings based on token sequences and abstract syntax trees.
Deep Reinforcement Learning for Programming Language Correction
Novice programmers often struggle with the formal syntax of programming languages.