English
Related papers

Related papers: The Strengths and Behavioral Quirks of Java Byteco…

200 papers

Automatically evaluate the correctness of programming assignments is rather straightforward using unit and integration tests. However, programming tasks can be solved in multiple ways, many of which, although correct, are inelegant. For…

Computation and Language · Computer Science 2023-09-19 Mosleh Mahamud , Isak Samsten

A C decompiler converts an executable into source code. The recovered C source code, once re-compiled, is expected to produce an executable with the same functionality as the original executable. With over twenty years of development, C…

Software Engineering · Computer Science 2023-11-30 Wai Kin Wong , Huaijin Wang , Zongjie Li , Zhibo Liu , Shuai Wang , Qiyi Tang , Sen Nie , Shi Wu

Despite being an old language feature, Java exception handling code is one of the least understood parts of many systems. Several studies have analyzed the characteristics of exception handling code, trying to identify common practices or…

Software Engineering · Computer Science 2019-01-28 Hugo Melo , Roberta Coelho , Christoph Treude

Despite huge software engineering efforts and programming language support, resource and memory leaks are still a troublesome issue, even in memory-managed languages such as Java. Understanding the properties of leak-inducing defects, how…

Software Engineering · Computer Science 2019-12-17 Mohammadreza Ghanavati , Diego Costa , Janos Seboek , David Lo , Artur Andrzejak

Decompilers are important tools for reverse engineers that help them analyze software at a higher level of abstraction than assembly code. Unfortunately, because compilation is lossy, deterministic decompilers produce code that is missing…

Software Engineering · Computer Science 2025-06-18 Luke Dramko , Claire Le Goues , Edward J. Schwartz

Neutral program variants are functionally similar to an original program, yet implement slightly different behaviors. Techniques such as approximate computing or genetic improvement share the intuition that potential for enhancements lies…

Software Engineering · Computer Science 2019-07-01 Nicolas Harrand , Simon Allier , Marcelino Rodriguez-Cancio , Martin Monperrus , Benoit Baudry

Many software analysis methods have come to rely on machine learning approaches. Code segmentation - the process of decomposing source code into meaningful blocks - can augment these methods by featurizing code, reducing noise, and limiting…

Software Engineering · Computer Science 2019-07-23 Jacob Dormuth , Ben Gelman , Jessica Moore , David Slater

Vulnerability prediction is valuable in identifying security issues efficiently, even though it requires the source code of the target software system, which is a restrictive hypothesis. This paper presents an experimental study to predict…

Cryptography and Security · Computer Science 2025-04-01 D. Cotroneo , F. C. Grasso , R. Natella , V. Orbinato

Decompilation aims to convert binary code to high-level source code, but traditional tools like Ghidra often produce results that are difficult to read and execute. Motivated by the advancements in Large Language Models (LLMs), we propose…

Programming Languages · Computer Science 2025-08-06 Hanzhuo Tan , Qi Luo , Jing Li , Yuqun Zhang

On average, 71% of the code in typical Java projects comes from open-source software (OSS) dependencies, making OSS dependencies the dominant component of modern software code bases. This high degree of OSS reliance comes with a…

Software Engineering · Computer Science 2025-10-23 Stefan Schott , Serena Elisa Ponta , Wolfram Fischer , Jonas Klauke , Eric Bodden

Much software, whether beneficent or malevolent, is distributed only as binaries, sans source code. Absent source code, understanding binaries' behavior can be quite challenging, especially when compiled under higher levels of compiler…

Software Engineering · Computer Science 2021-09-20 Toufique Ahmed , Premkumar Devanbu , Anand Ashok Sawant

A major part of debugging, testing, and analyzing a complex software system is understanding what is happening within the system at run-time. Some developers advocate running within a debugger to better understand the system at this level.…

Software Engineering · Computer Science 2007-05-23 Joseph R. Kiniry

Generative machine learning models have recently been applied to source code, for use cases including translating code between programming languages, creating documentation from code, and auto-completing methods. Yet, state-of-the-art…

Binary decompilation aims to recover binaries into high-level source code, but existing evaluations mainly rely on syntactic similarity or single-axis readability metrics, which fail to capture practical reusability. We propose a…

Software Engineering · Computer Science 2026-05-29 Puzhuo Liu , Yuhan Huang , Jianlei Chi , Peng Di , Yu Jiang

In this paper, the term formula code refers to fragments of source code that implement a mathematical formula. We present empirical studies that analyze the diversity and frequency of formula code in open-source-software projects. In an…

Software Engineering · Computer Science 2020-11-30 Oliver Moseler , Felix Lemmer , Sebastian Baltes , Stephan Diehl

Most businesses rely on a significant stack of software to perform their daily operations. This software is business-critical as defects in this software have major impacts on revenue and customer satisfaction. The primary means for…

Software Engineering · Computer Science 2020-11-03 Peter Schrammel

Software debloating tools seek to improve program security and performance by removing unnecessary code, called bloat. While many techniques have been proposed, several barriers to their adoption have emerged. Namely, debloating tools are…

Software Engineering · Computer Science 2024-06-14 Michael D. Brown , Adam Meily , Brian Fairservice , Akshay Sood , Jonathan Dorn , Eric Kilmer , Ronald Eytchison

This paper presents an integrity checker of JAVA P2P distributed system with auto source code composition. JAVA distributed system must guarantee the integrity of program itself and the system components of JAVA virtual machine against…

Cryptography and Security · Computer Science 2016-10-31 Lican Huang

With the rapid development of deep learning, the implementation of intricate algorithms and substantial data processing have become standard elements of deep learning projects. As a result, the code has become progressively complex as the…

Software Engineering · Computer Science 2025-08-05 Siqi Wang , Xing Hu , Bei Wang , Wenxin Yao , Xin Xia , Xinyu Wang

We introduce program splicing, a programming methodology that aims to automate the commonly used workflow of copying, pasting, and modifying code available online. Here, the programmer starts by writing a "draft" that mixes unfinished code,…

Programming Languages · Computer Science 2017-05-26 Yanxin Lu , Swarat Chaudhuri , Chris Jermaine , David Melski
‹ Prev 1 3 4 5 6 7 10 Next ›