Learning to Extend Program Graphs to Work-in-Progress Code
Source code spends most of its time in a broken or incomplete state during software development. This presents a challenge to machine learning for code, since high-performing models typically rely on graph structured representations of programs derived from traditional program analyses. Such analyses may be undefined for broken or incomplete code. We extend the notion of program graphs to work-in-progress code by learning to predict edge relations between tokens, training on well-formed code before transferring to work-in-progress code. We consider the tasks of code completion and localizing and repairing variable misuse in a work-in-process scenario. We demonstrate that training relation-aware models with fine-tuned edges consistently leads to improved performance on both tasks.
Code (0)
등록된 구현이 없습니다.
Tasks
Code CompletionVariable misuseSimilar Papers 제목 키워드 기반
Better Modeling the Programming World with Code Concept Graphs-augmented Multi-modal Learning
The progress made in code modeling has been tremendous in recent years thanks to the design of natural language processing learning approaches based on state-of-the-art model architectures. Nevertheless, we believe that …
Code SearchGraph Neural NetworkLanguage ModelingLanguage ModellingLearning to Represent Programs with Heterogeneous Graphs
Program source code contains complex structure information, which can be represented in structured data forms like trees or graphs. To acquire the structural information in source code, most existing researches use abstr…
Code Comment GenerationComment GenerationBeyond Graph Neural Networks with Lifted Relational Neural Networks
We demonstrate a declarative differentiable programming framework based on the language of Lifted Relational Neural Networks, where small parameterized logic programs are used to encode relational learning scenarios. Whe…
Relational ReasoningPrompt Programming: A Platform for Dialogue-based Computational Problem Solving with Generative AI Models
Computing students increasingly rely on generative AI tools for programming assistance, often without formal instruction or guidance. This highlights a need to teach students how to effectively interact with AI models, p…
Exploring Representation of Horn Clauses using GNNs (Extended Technical Report)
Learning program semantics from raw source code is challenging due to the complexity of real-world programming language syntax and due to the difficulty of reconstructing long-distance relational information implicitly r…