Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- research-articleJune 2024
SICode: Embedding-Based Subgraph Isomorphism Identification for Bug Detection
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 304–315https://doi.org/10.1145/3643916.3646556Given a known buggy code snippet, searching for similar patterns in a target project to detect unknown bugs is a reasonable approach. In practice, a search unit, such as a function, may appear quite different from the buggy snippet but actually contains ...
- research-articleJune 2024
HyperCRX: A Browser Extension for Insights into GitHub Projects and Developers
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 460–464https://doi.org/10.1145/3643916.3644440We present HyperCRX, a browser extension designed to enhance the open source experience by providing insights into GitHub projects and developers. Our tool seamlessly integrates with GitHub, offering interactive features that reveal the maintenance ...
- research-articleJune 2024
Immersive Software Archaeology: Collaborative Exploration and Note Taking in Virtual Reality
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 387–391https://doi.org/10.1145/3643916.3644438Understanding software systems is a vital task, often undertaken by teams of engineers, for the development and maintenance of systems. Collaborative software visualization tools are essential in this context, yet they are limited. Existing tools, ...
- research-articleJune 2024
CAREER: Context-Aware API Recognition with Data Augmentation for API Knowledge Extraction
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 438–449https://doi.org/10.1145/3643916.3644431The recognition of Application Programming Interface (API) mentions in the software-related texts is a prerequisite task for extracting API-related knowledge. Previous studies have demonstrated the superiority of deep learning-based methods in ...
- research-articleJune 2024
Collaborative Software Exploration with Multimedia Note Taking in Virtual Reality
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 346–357https://doi.org/10.1145/3643916.3644427Exploring and comprehending a software system, e.g., as preparation for its re-engineering, is a relevant, yet challenging endeavour often conducted by teams of engineers. Collaborative exploration tools aim to ease the process, e.g., via interactive ...
- research-articleJune 2024
The Sword of Damocles: Upgradeable Smart Contract in Ethereum
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 333–345https://doi.org/10.1145/3643916.3644426Although smart contracts are immutable once they are deployed, the reality is that they need upgrades to fix bugs or add new features. Nowadays, there are a few upgrade methods in Ethereum, some of which can change the contract without changing the ...
- research-articleJune 2024
Understanding Regular Expression Denial of Service (ReDoS): Insights from LLM-Generated Regexes and Developer Forums
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 190–201https://doi.org/10.1145/3643916.3644424Regular expression Denial of Service (ReDoS) represents an algorithmic complexity attack that exploits the processing of regular expressions (regexes) to produce a denial-of-service attack. This attack occurs when a regex's evaluation time scales ...
- research-articleJune 2024
What Do Developers Feel About Fast-Growing Programming Languages? An Exploratory Study
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 178–189https://doi.org/10.1145/3643916.3644422The developer community has witnessed an unprecedented surge in recent years, with over 100 million active developers on the GitHub platform in 2023. Along with it, there is a significant rise and adoption of new programming languages, frameworks and ...
- research-articleJune 2024
Exploring and Improving Code Completion for Test Code
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 137–148https://doi.org/10.1145/3643916.3644421Code completion is an important feature in Integrated Development Environments (IDEs). These years, researchers have been making efforts for intelligent code completion. However, existing work on intelligent code completion either only considered ...
- research-articleJune 2024
Lightweight Syntactic API Usage Analysis with UCov
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 426–437https://doi.org/10.1145/3643916.3644415Designing an effective API is essential for library developers as it is the lens through which clients will judge its usability and benefits, as well as the main friction point when the library evolves. Despite its importance, defining the boundaries of ...
- research-articleJune 2024
How do Hugging Face Models Document Datasets, Bias, and Licenses? An Empirical Study
- Federica Pepe,
- Vittoria Nardone,
- Antonio Mastropaolo,
- Gabriele Bavota,
- Gerardo Canfora,
- Massimiliano Di Penta
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 370–381https://doi.org/10.1145/3643916.3644412Pre-trained Machine Learning (ML) models help to create ML-intensive systems without having to spend conspicuous resources on training a new model from the ground up. However, the lack of transparency for such models could lead to undesired consequences ...
- research-articleJune 2024
The Impact of Compiler Warnings on Code Quality in C++ Projects
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 270–279https://doi.org/10.1145/3643916.3644410Modern compilers often offer a variety of warning flags, which developers can enable to get feedback on code that, while syntactically correct, may be problematic. In the case of C++, one example of such "correct but problematic" code is code that leads ...
- research-articleJune 2024
Analyzing Prompt Influence on Automated Method Generation: An Empirical Study with Copilot
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 24–34https://doi.org/10.1145/3643916.3644409Generative AI is changing the way developers interact with software systems, providing services that can produce and deliver new content, crafted to satisfy the actual needs of developers. For instance, developers can ask for new code directly from ...
- research-articleJune 2024
SolaSim: Clone Detection for Solana Smart Contracts via Program Representation
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 258–269https://doi.org/10.1145/3643916.3644406The open-source nature of smart contracts provides the facility for developers to clone contracts and introduces the risk of vulnerability proliferation as well. Despite intensive research on smart contract clone detection in recent years, existing ...
- research-articleJune 2024
What the Fix? A Study of ASATs Rule Documentation
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 246–257https://doi.org/10.1145/3643916.3644404Automatic Static Analysis Tools (ASATs) are widely used by software developers to diffuse and enforce coding practices. Yet, we know little about the documentation of ASATs, despite it being critical to learn about the coding practices in the first ...
- research-articleJune 2024
Generating Java Methods: An Empirical Assessment of Four AI-Based Code Assistants
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 13–23https://doi.org/10.1145/3643916.3644402AI-based code assistants are promising tools that can facilitate and speed up code development. They exploit machine learning algorithms and natural language processing to interact with developers, suggesting code snippets (e.g., method implementations) ...
- research-articleJune 2024
Exploring the Impact of Source Code Linearity on the Programmers' Comprehension of API Code Examples
ICPC '24: Proceedings of the 32nd IEEE/ACM International Conference on Program ComprehensionApril 2024, Pages 236–240https://doi.org/10.1145/3643916.3644395Context: Application Programming Interface (API) code examples are an essential knowledge resource for learning APIs. However, a few user studies have explored how the structural characteristics of the source code in code examples impact their ...