A General Path-Based Representation for Predicting Program Properties
Not on the map. Why?
Abstract (arXiv)
Predicting program properties such as names or expression types has a wide range of applications. It can ease the task of programming and increase programmer productivity. A major challenge when learning from programs is textithow to represent programs in a way that facilitates effective learning. We present a textitgeneral path-based representation for learning from programs. Our representation is purely syntactic and extracted automatically. The main idea is to represent a program using paths in its abstract syntax tree (AST). This allows a learning model to leverage the structured nature of code rather than treating it as a flat sequence of tokens. We show that this representation is general and can: (i) cover different prediction tasks, (ii) drive different learning algorithms (for both generative and discriminative models), and (iii) work across different programming languages. We evaluate our approach on the tasks of predicting variable names, method names, and full types. We use our representation to drive both CRF-based and word2vec-based learning, for programs of four languages: JavaScript, Java, Python and C#. Our evaluation shows that our approach obtains better results than task-specific handcrafted representations across different tasks and programming languages.
Key facts. Cited by 29 papers in the map (data through 14 Oct 2026). First posted on arXiv 26 Mar 2018.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 12; 2022: 8; 2023: 5; 2024: 2; 2025: 1; 2026: 1.
29 papers.
Sort:
By area:
- 2021DOBF: A Deobfuscation Pre-Training Objective for Programming Languagescited by 68
- 2021Language-Agnostic Representation Learning of Source Code from Structure and Contextcited by 63
- 2021Code Completion by Modeling Flattened Abstract Syntax Trees as Graphscited by 30
- 2021A Survey on Machine Learning Techniques for Source Code Analysiscited by 24
- 2022Assemble Foundation Models for Automatic Code Summarizationcited by 17
- 2022Code-DKT: A Code-based Knowledge Tracing Model for Programming Taskscited by 16
- 2021Multimodal Representation for Neural Code Searchcited by 11
- 2021On using distributed representations of source code for the detection of C security vulnerabilitiescited by 10
- 2023Performance Optimization using Multimodal Modeling and Heterogeneous GNNcited by 7
- 2024CompilerDream: Learning a Compiler World Model for General Code Optimizationcited by 6
- 2021Toward Less Hidden Cost of Code Completion with Acceptance and Ranking Modelscited by 5
- 2021XFL: Naming Functions in Binaries with Extreme Multi-label Learningcited by 5
17 more
- 2022GypSum: Learning Hybrid Representations for Code Summarizationcited by 5
- 2023Abstract Syntax Tree for Programming Language Understanding and Representation: How Far Are We?cited by 5
- 2021Learning to Make Compiler Optimizations More Effectivecited by 4
- 2021PSIMiner: A Tool for Mining Rich Abstract Syntax Trees from Codecited by 4
- 2022A Survey of Deep Learning Models for Structural Code Understandingcited by 4
- 2025ObscuraCoder: Powering Efficient Code LM Pre-Training Via Obfuscation Groundingcited by 4
- 2022AdaptivePaste: Code Adaptation through Learning Semantics-aware Variable Usage Representationscited by 3
- 2021Precise Learning of Source Code Contextual Semantics via Hierarchical Dependence Structure and Graph Attention Networkscited by 2
- 2022Assessing Project-Level Fine-Tuning of ML4SE Modelscited by 2
- 2022CLAWSAT: Towards Both Robust and Accurate Code Modelscited by 2
- 2024MIREncoder: Multi-modal IR-based Pretrained Embeddings for Performance Optimizationscited by 2
- 2026Dissecting model behavior through agent trajectoriescited by 2
- 2022Evaluating the Impact of Source Code Parsers on ML4SE Modelscited by 1
- 2023An Exploratory Literature Study on Sharing and Energy Use of Language Models for Source Codecited by 1
- 2021Code Representation Learning with Pr"ufer Sequencescited by 0
- 2023Modelling Concurrency Bugs Using Machine Learningcited by 0
- 2023Epicure: Distilling Sequence Model Predictions into Patternscited by 0
- 2026Dissecting model behavior through agent trajectories16 Jun 2026
- 2025ObscuraCoder: Powering Efficient Code LM Pre-Training Via Obfuscation Grounding27 Mar 2025
- 2024MIREncoder: Multi-modal IR-based Pretrained Embeddings for Performance Optimizations2 Jul 2024
- 2024CompilerDream: Learning a Compiler World Model for General Code Optimization24 Apr 2024
- 2023Abstract Syntax Tree for Programming Language Understanding and Representation: How Far Are We?1 Dec 2023
- 2023Epicure: Distilling Sequence Model Predictions into Patterns16 Aug 2023
- 2023An Exploratory Literature Study on Sharing and Energy Use of Language Models for Source Code5 Jul 2023
- 2023Modelling Concurrency Bugs Using Machine Learning8 May 2023
- 2023Performance Optimization using Multimodal Modeling and Heterogeneous GNN25 Apr 2023
- 2022CLAWSAT: Towards Both Robust and Accurate Code Models21 Nov 2022
- 2022Evaluating the Impact of Source Code Parsers on ML4SE Models17 Jun 2022
- 2022Code-DKT: A Code-based Knowledge Tracing Model for Programming Tasks7 Jun 2022
17 more
- 2022Assessing Project-Level Fine-Tuning of ML4SE Models7 Jun 2022
- 2022AdaptivePaste: Code Adaptation through Learning Semantics-aware Variable Usage Representations23 May 2022
- 2022A Survey of Deep Learning Models for Structural Code Understanding3 May 2022
- 2022GypSum: Learning Hybrid Representations for Code Summarization26 Apr 2022
- 2022Assemble Foundation Models for Automatic Code Summarization13 Jan 2022
- 2021Precise Learning of Source Code Contextual Semantics via Hierarchical Dependence Structure and Graph Attention Networks20 Nov 2021
- 2021Code Representation Learning with Pr"ufer Sequences14 Nov 2021
- 2021A Survey on Machine Learning Techniques for Source Code Analysis18 Oct 2021
- 2021XFL: Naming Functions in Binaries with Extreme Multi-label Learning28 Jul 2021
- 2021Multimodal Representation for Neural Code Search2 Jul 2021
- 2021Toward Less Hidden Cost of Code Completion with Acceptance and Ranking Models26 Jun 2021
- 2021On using distributed representations of source code for the detection of C security vulnerabilities1 Jun 2021
- 2021PSIMiner: A Tool for Mining Rich Abstract Syntax Trees from Code23 Mar 2021
- 2021Language-Agnostic Representation Learning of Source Code from Structure and Context21 Mar 2021
- 2021Code Completion by Modeling Flattened Abstract Syntax Trees as Graphs17 Mar 2021
- 2021Learning to Make Compiler Optimizations More Effective24 Feb 2021
- 2021DOBF: A Deobfuscation Pre-Training Objective for Programming Languages15 Feb 2021
- 2021DOBF: A Deobfuscation Pre-Training Objective for Programming Languagescited by 68
- 2021Language-Agnostic Representation Learning of Source Code from Structure and Contextcited by 63
- 2021Code Completion by Modeling Flattened Abstract Syntax Trees as Graphscited by 30
- 2021A Survey on Machine Learning Techniques for Source Code Analysiscited by 24
- 2022Assemble Foundation Models for Automatic Code Summarizationcited by 17
- 2022Code-DKT: A Code-based Knowledge Tracing Model for Programming Taskscited by 16
- 2021Multimodal Representation for Neural Code Searchcited by 11
- 2021On using distributed representations of source code for the detection of C security vulnerabilitiescited by 10
- 2023Performance Optimization using Multimodal Modeling and Heterogeneous GNNcited by 7
- 2021Toward Less Hidden Cost of Code Completion with Acceptance and Ranking Modelscited by 5
- 2021XFL: Naming Functions in Binaries with Extreme Multi-label Learningcited by 5
- 2022GypSum: Learning Hybrid Representations for Code Summarizationcited by 5
12 most cited of 28 All 28 (JSON)
- 2026Dissecting model behavior through agent trajectories16 Jun 2026
- 2025ObscuraCoder: Powering Efficient Code LM Pre-Training Via Obfuscation Grounding27 Mar 2025
- 2024MIREncoder: Multi-modal IR-based Pretrained Embeddings for Performance Optimizations2 Jul 2024
- 2023Abstract Syntax Tree for Programming Language Understanding and Representation: How Far Are We?1 Dec 2023
- 2023Epicure: Distilling Sequence Model Predictions into Patterns16 Aug 2023
- 2023An Exploratory Literature Study on Sharing and Energy Use of Language Models for Source Code5 Jul 2023
- 2023Modelling Concurrency Bugs Using Machine Learning8 May 2023
- 2023Performance Optimization using Multimodal Modeling and Heterogeneous GNN25 Apr 2023
- 2022CLAWSAT: Towards Both Robust and Accurate Code Models21 Nov 2022
- 2022Evaluating the Impact of Source Code Parsers on ML4SE Models17 Jun 2022
- 2022Code-DKT: A Code-based Knowledge Tracing Model for Programming Tasks7 Jun 2022
- 2022Assessing Project-Level Fine-Tuning of ML4SE Models7 Jun 2022
12 newest of 28 All 28 (JSON)