Hoppity: Learning Graph Transformations to Detect and Fix Bugs in Programs
By Elizabeth Dinella, Hanjun Dai, Ziyang Li, Mayur Naik, Le Song, Ke Wang, Ke Wang. 2020
215 citations recorded by the source corpus.
Subfields: Natural Language Processing
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Natural Language Processing
Citations in the corpus
- Program Synthesis with Large Language Models (2021, methodology): “Many learning methods have been proposed for program repair [Allamanis et al., 2018b, Tarlow et al., 2019, Hellendoorn et al., 2019, Dinella et al., 2019, Yasunaga and Liang, 2020, Chen et al., 2019b, Pradel and Sen, 2018].”
- Break-It-Fix-It: Unsupervised Learning for Program Repair (2021, background): “Development of an automatic code fixer is thus a key to enhancing programming productivity (Seo et al., 2014) and is an active area of research (Mesbah et al., 2019; Ding et al., 2020; Dinella et al., 2020).”
- Graph-based, Self-Supervised Program Repair from Diagnostic Feedback (2020, background): “, 2019), name-based bugs (Pradel & Sen, 2018) and Javascript bugs (Dinella et al., 2020).”
- CodeBLEU: a Method for Automatic Evaluation of Code Synthesis (2020, methodology): “…and Vechev 2014; Oda et al. 2015; Barone and Sennrich 2017; Chen, Liu, and Song 2018; Kanade et al. 2019; Husain et al. 2019; Feng et al. 2020; Dinella et al. 2020; Lachaux et al. 2020), different automatic evaluation methods for code synthesis are leveraged, including n-gram accuracy…”
- Open Graph Benchmark: Datasets for Machine Learning on Graphs (2020, methodology): “Benchmarking results are given in Table 18, where we add “next-token edges” on top of the AST (as illustrated in Figure 4) to better capture the semantics of code graphs (Dinella et al., 2020).”
- A syntax-guided edit decoder for neural program repair (2021, methodology): “Several existing DL-based approaches also use the idea of generating edits on programs [4, 5, 9, 65, 74].”
- Can OpenAI's Codex Fix Bugs?: An evaluation on QuixBugs (2022, methodology): “A variety of different APR approaches have been proposed in the recent years: i) using genetic-programming (e.g., GenProg [8] or ARJA [29]), ii) using repair patterns (such as PAR [13], ELIXIR [24] or TBar [17]), iii) code retrieval-based approaches (e.g., ssFix [26] or LSRepair [18]), iv) or using ”
- Patching as Translation: the Data and the Metaphor (2020, result): “nappropriate for the task. On the other hand, our results shed light on the effectiveness of a recent competing approach: repairing bugs by synthesizing edits of code conditional on the buggy context [8, 29, 31]. Not only does this approach agree better with our empirical findings, we implemented a ”
- Learning to Execute Programs with Instruction Pointer Attention Graph Neural Networks (2020, unknown): “GNNs have been applied a variety of program representations and static analysis tasks [2, 8, 13, 21, 23, 25, 28].”
- Learning semantic program embeddings with graph interval neural network (2020, methodology): “2019), bug localization and xing (Dinella et al. 2020), and type inference (Wei et al.”
- Neural Edit Completion (2020, methodology): “Dinella et al. [2020] evaluated their model on examples that contain three single-node operations at most.”
- Leveraging Automated Unit Tests for Unsupervised Code Translation (2021, methodology): “In recent years, deep learning methods have been used to tackle various tasks in software engineering, with a particular interest in bug detection and repair (Wang et al., 2018; Chen et al., 2019; Allamanis et al., 2018; Tarlow et al., 2020; Murali et al., 2021; Dinella et al., 2020; Yasunaga & Lian”
- PLUR: A Unifying, Graph-Based View of Program Learning, Understanding, and Repair (2021, methodology): “For example, VarMisuseH and Hoppity are graph-based program repair tasks but with differing output representations.”