Learning to Fix Build Errors with Graph2Diff Neural Networks
Professional software developers spend a significant amount of time fixing builds, but this has received little attention as a problem in automatic program repair. We present a new deep learning architecture, called Graph2Diff, for automatically localizing and fixing build errors. We represent source code, build configuration files, and compiler diagnostic messages as a graph, and then use a Graph Neural Network model to predict a diff. A diff specifies how to modify the code's abstract syntax tree, represented in the neural network as a sequence of tokens and of pointers to code locations. Our network is an instance of a more general abstraction that we call Graph2Tocopo, which is potentially useful in any development tool for predicting source code changes. We evaluate the model on a dataset of over 500k real build errors and their resolutions from professional developers. Compared to the approach of DeepDelta (Mesbah et al., 2019), our approach tackles the harder task of predicting a more precise diff but still achieves over double the accuracy.
Code (0)
등록된 구현이 없습니다.
Tasks
DiagnosticGraph Neural NetworkProgram RepairMethods 이 논문이 사용한 방법론
Similar Papers 제목 키워드 기반
Node Embeddings for Graph Merging: Case of Knowledge Graph Construction
Combining two graphs requires merging the nodes which are counterparts of each other. In this process errors occur, resulting in incorrect merging or incorrect failure to merge. We find a high prevalence of such errors w…
graph constructionKnowledge GraphsLogic Error Localization in Student Programming Assignments Using Pseudocode and Graph Neural Networks
Pseudocode is extensively used in introductory programming courses to instruct computer science students in algorithm design, utilizing natural language to define algorithmic behaviors. This learning approach enables stu…
DiagnosticGraph Neural NetworkTopography scanning as a part of process monitoring in power cable insulation process
We present a novel topography scanning system developed to XLPE cable core monitoring. Modern measurement technology is utilized together with embedded high-performance computing to build a complete and detailed 3D surfa…
SAGC-A68: a space access graph dataset for the classification of spaces and space elements in apartment buildings
The analysis of building models for usable area, building safety, and energy use requires accurate classification data of spaces and space elements. To reduce input model preparation effort and errors, automated classifi…
ClassificationGraph AttentionPseudorandom Error-Correcting Codes
We construct pseudorandom error-correcting codes (or simply pseudorandom codes), which are error-correcting codes with the property that any polynomial number of codewords are pseudorandom to any computationally-bounded …