Research
On-device research index

arXiv research

A locally-built, LLM-digested index of recent arXiv papers in quant finance, geometry/topology, and statistical ML — keyword search served straight from SQLite on this machine.

168,786 papers · 148 categories

Trend · papers per month

6.3%12.5%18.8%25.0% · Apr 199319922001200920172026
48 results for program source code

TreeCaps improves code comprehension for software developers.

problem Processing code efficiently for software developers.
method Tree-based capsule networks for capturing code syntactical structures and dependencies.
result TreeCaps outperforms other approaches in classifying program functionalities.

Determining the programming language of a source code file has been considered in the research community; it has been shown that Machine Learning (ML) and Natural Language Processing (NLP) algorithms can be effective in identifying the programming language of source code files. However, determining the programming lang…

2018-09-21abs ↗pdf ↗

Paper explores understanding of neural source code embeddings.

problem Lack of understanding of contents and characteristics of code2vec embeddings.
method Small case study using code2vec embeddings to create binary SVM classifiers and compare performance with handcrafted features.
result Code2vec embeddings perform similarly to handcrafted features and have more evenly distributed information gains.

Contrastive Code Representation Learning improves code summarization and type inference.

problem Code representations are sensitive to edits, hindering downstream semantic understanding tasks.
method ContraCode: a contrastive pre-training task that learns code functionality.
result Contrastive pre-training improves code summarization and type inference accuracy.

The ability to generate natural language sequences from source code snippets has a variety of applications such as code summarization, documentation, and retrieval. Sequence-to-sequence (seq2seq) models, adopted from neural machine translation (NMT), have achieved state-of-the-art performance on these tasks by treating…

2018-08-04abs ↗pdf ↗

DiffTaichi enables fast, differentiable physical simulations with shorter code.

problem Building efficient differentiable physical simulators.
method Differentiable programming language (DiffTaichi) that generates gradients using source code transformations and a light-weight tape.
result Differentiable physical simulators written in DiffTaichi are faster and more concise than existing methods.

The recent use of `Big Code' with state-of-the-art deep learning methods offers promising avenues to ease program source code writing and correction. As a first step towards automatic code repair, we implemented a graph neural network model that predicts token types for Javascript programs. The predictions achieve an a…

2019-05-16abs ↗pdf ↗

Program synthesis of general-purpose source code from natural language specifications is challenging due to the need to reason about high-level patterns in the target program and low-level implementation details at the same time. In this work, we present PATOIS, a system that allows a neural program synthesizer to expl…

2019-06-26abs ↗pdf ↗

SLM models code syntax as trees to generate any programming language code.

problem Generating any piece of code in a given language without restrictions.
method Structural language modeling (SLM) decomposes code into ASTs and estimates probabilities over nodes.
result SLM model generates arbitrary code in any language, outperforming previous methods.

Code search and comprehension have become more difficult in recent years due to the rapid expansion of available source code. Current tools lack a way to label arbitrary code at scale while maintaining up-to-date representations of new programming languages, libraries, and functionalities. Comprehensive labeling of sou…

2019-06-03abs ↗pdf ↗

Natural language processing has improved tremendously after the success of word embedding techniques such as word2vec. Recently, the same idea has been applied on source code with encouraging results. In this survey, we aim to collect and discuss the usage of word embedding techniques on programs and source code. The a…

2019-04-05abs ↗pdf ↗

Graph-based approach repairs programs from diagnostic feedback.

problem Learning to repair programs from limited labeled data and compiler error messages.
method Introduces program-feedback graph and graph neural network for reasoning, and self-supervised learning with unlabeled programs.
result DrRepair significantly outperforms prior work, achieving high repair rates.

Code generation maps a program description to executable source code in a programming language. Existing approaches mainly rely on a recurrent neural network (RNN) as the decoder. However, we find that a program contains significantly more tokens than a natural language sentence, and thus it may be inappropriate for RN…

2018-11-14abs ↗pdf ↗

We study the problem of building generative models of natural source code (NSC); that is, source code written and understood by humans. Our primary contribution is to describe a family of generative models for NSC that have three key properties: First, they incorporate both sequential and hierarchical structure. Second…

2014-01-02abs ↗pdf ↗

This paper presents a novel end-to-end approach to program repair based on sequence-to-sequence learning. We devise, implement, and evaluate a system, called SequenceR, for fixing bugs based on sequence-to-sequence learning on source code. This approach uses the copy mechanism to overcome the unlimited vocabulary probl…

2018-12-24abs ↗pdf ↗

We present the first general purpose framework for marginal maximum a posteriori estimation of probabilistic program variables. By using a series of code transformations, the evidence of any probabilistic program, and therefore of any graphical model, can be optimized with respect to an arbitrary subset of its sampled …

2017-07-13abs ↗pdf ↗

Programming languages are emerging as a challenging and interesting domain for machine learning. A core task, which has received significant attention in recent years, is building generative models of source code. However, to our knowledge, previous generative models have always been framed in terms of generating stati…

2019-04-04abs ↗pdf ↗

We consider the task of mapping pseudocode to long programs that are functionally correct. Given test cases as a mechanism to validate programs, we search over the space of possible translations of the pseudocode to find a program that passes the validation. However, without proper credit assignment to localize the sou…

2019-06-12abs ↗pdf ↗

As the performance of computer systems stagnates due to the end of Moore's Law, there is a need for new models that can understand and optimize the execution of general purpose code. While there is a growing body of work on using Graph Neural Networks (GNNs) to learn representations of source code, these representation…

2019-06-17abs ↗pdf ↗

Neural program embedding can be helpful in analyzing large software, a task that is challenging for traditional logic-based program analyses due to their limited scalability. A key focus of recent machine-learning advances in this area is on modeling program semantics instead of just syntax. Unfortunately evaluating su…

2019-05-27abs ↗pdf ↗

Machine learning models that take computer program source code as input typically use Natural Language Processing (NLP) techniques. However, a major challenge is that code is written using an open, rapidly changing vocabulary due to, e.g., the coinage of new variable and method names. Reasoning over such a vocabulary i…

2018-10-18abs ↗pdf ↗

There is a perceived trade-off between machine learning code that is easy to write, and machine learning code that is scalable or fast to execute. In machine learning, imperative style libraries like Autograd and PyTorch are easy to write, but suffer from high interpretive overhead and are not easily deployable in prod…

2018-10-16abs ↗pdf ↗

Thousands of security vulnerabilities are discovered in production software each year, either reported publicly to the Common Vulnerabilities and Exposures database or discovered internally in proprietary code. Vulnerabilities often manifest themselves in subtle ways that are not obvious to code reviewers or the develo…

2018-02-14abs ↗pdf ↗

Generative models for source code are an interesting structured prediction problem, requiring to reason about both hard syntactic and semantic constraints as well as about natural, likely programs. We present a novel model for this problem that uses a graph to represent the intermediate state of the generated output. T…

2018-05-22abs ↗pdf ↗

Devign uses graph neural networks to identify vulnerabilities efficiently.

problem Challenging and tedious process of identifying vulnerabilities in software systems.
method Devign employs a graph neural network to classify graph-level vulnerabilities using comprehensive code semantic representations.
result Devign significantly outperforms state-of-the-art models in vulnerability identification.

Bin2vec learns executable program representations for security tasks.

problem Manual rule and heuristic definition for binary program analysis is tedious and time-consuming.
method Bin2vec uses Graph Convolutional Networks (GCN) on computational program graphs.
result Improvement over state-of-the-art methods for binary analysis tasks.

Scikit-multiflow is a multi-output/multi-label and stream data mining framework for the Python programming language. Conceived to serve as a platform to encourage democratization of stream learning research, it provides multiple state of the art methods for stream learning, stream generators and evaluators. scikit-mult…

2018-07-12abs ↗pdf ↗

This paper simplifies ANS for statisticians, making it easier to use.

problem Statisticians struggle to understand ANS and its versatility.
method Present ANS from a latent variable model perspective and guide step-by-step implementation.
result Made ANS more accessible for statisticians through a Python implementation and library.

This work tackles runtime complexity prediction for code, using machine learning and a new dataset.

problem Predicting runtime complexity of code is hard and mathematically impossible.
method Modelled as a machine learning task, using feature engineering and code embeddings, with a new dataset.
result Achieved state-of-the-art results in runtime complexity prediction.

A new method streamlines digital payment programming using smart contracts.

problem High costs and security challenges in programming smart contracts for digital payments.
method Transforming digital currencies into token streams and using configurable templates to generate specialized smart contracts.
result Reduces payment programming costs and enhances security, self-enforcement, adaptability, and controllability.

skscope simplifies sparsity-constrained optimization in Python.

problem Tedious mathematical deduction and programming for sparsity-constrained optimization.
method Introduces skscope, a Python library that allows users to solve sparsity-constrained optimization problems by just programming the objective function.
result skscope enables state-of-the-art solvers to quickly attain sparse solutions in high-dimensional spaces, achieving up to 80x speedup.

IdBench benchmarks semantic representations of identifiers, revealing strengths and weaknesses.

problem Evaluating semantic representations of identifiers in source code.
method Created a benchmark using developer ratings, evaluated natural language and source code embeddings, and compared lexical string distance functions.
result No single technique provides a satisfactory representation of semantic similarities, but ensemble models can improve performance.