Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- ArticleSeptember 2024
Registries in Machine Learning-Based Drug Discovery: A Shortcut to Code Reuse
AbstractComputer-aided drug discovery gradually builds on previous work and requires reusable code to advance research. Currently, research code is mainly used to provide further insights into the original research whilst code reuse has a lower priority. ...
- 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 ComprehensionPages 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-articleNovember 2023
Demystifying the Composition and Code Reuse in Solidity Smart Contracts
ESEC/FSE 2023: Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software EngineeringPages 796–807https://doi.org/10.1145/3611643.3616270As the development of Solidity smart contracts has increased in popularity, the reliance on external sources such as third-party packages increases to reduce development costs. However, despite the use of external sources bringing flexibility and ...
- research-articleDecember 2022
Language Support for Refactorability Decay Prevention
GPCE 2022: Proceedings of the 21st ACM SIGPLAN International Conference on Generative Programming: Concepts and ExperiencesPages 122–134https://doi.org/10.1145/3564719.3568688Even code that is free of smells may be at high risk of forming them. In such cases, developers can either perform preventive refactoring in order to reduce this risk, or leave the code as is and perform corrective refactoring as smells emerge. In ...
- short-paperDecember 2022
Explicit Code Reuse Recommendation
SPLASH Companion 2022: Companion Proceedings of the 2022 ACM SIGPLAN International Conference on Systems, Programming, Languages, and Applications: Software for HumanityPages 9–10https://doi.org/10.1145/3563768.3564118Code reuse is a common and recommended practice. However, to avoid code duplication reuse may require substantial refactoring effort, especially in legacy code with which the developer is not profoundly familiar. For this reason, developers often prefer ...
-
- research-articleOctober 2022
Strategies for reuse and sharing among data scientists in software teams
ICSE-SEIP '22: Proceedings of the 44th International Conference on Software Engineering: Software Engineering in PracticePages 243–252https://doi.org/10.1145/3510457.3513042Effective sharing and reuse practices have long been hallmarks of proficient software engineering. Yet the exploratory nature of data science presents new challenges and opportunities to support sharing and reuse of analysis code. To better understand ...
- research-articleJuly 2022
The extent of orphan vulnerabilities from code reuse in open source software
ICSE '22: Proceedings of the 44th International Conference on Software EngineeringPages 2104–2115https://doi.org/10.1145/3510003.3510216Motivation: A key premise of open source software is the ability to copy code to other open source projects (white-box reuse). Such copying accelerates development of new projects, but the code flaws in the original projects, such as vulnerabilities, may ...
- research-articleOctober 2022
Towards exploring the code reuse from stack overflow during software development
ICPC '22: Proceedings of the 30th IEEE/ACM International Conference on Program ComprehensionPages 548–559https://doi.org/10.1145/3524610.3527923As one of the most well-known programmer Q&A websites, Stack Overflow (i.e., SO) is serving tens of thousands of developers every day. Previous work has shown that many developers reuse the code snippets on SO when they find an answer (from SO) that ...
- ArticleApril 2022
Semantic Code Search in Software Repositories using Neural Machine Translation
Fundamental Approaches to Software EngineeringPages 225–244https://doi.org/10.1007/978-3-030-99429-7_13AbstractNowadays, software development is accelerated through the reuse of code snippets found online in question-answering platforms and software repositories. In order to be efficient, this process requires forming an appropriate query and identifying ...
- research-articleMarch 2022
Securely Sharing Randomized Code That Flies
Digital Threats: Research and Practice (DTRAP), Volume 3, Issue 3Article No.: 32, Pages 1–25https://doi.org/10.1145/3474558Address space layout randomization was a great role model, being a light-weight defense technique that could prevent early return-oriented programming attacks. Simple yet effective, address space layout randomization was quickly widely adopted. Conversely,...
- research-articleJanuary 2022
Obfuscated code is identifiable by a token-based code clone detection technique
International Journal of Information and Computer Security (IJICS), Volume 19, Issue 3-4Pages 254–273https://doi.org/10.1504/ijics.2022.127132Recently, developers use obfuscation techniques to make their code difficult to understand or analyse, especially malware developers. In Android applications, if the application is obfuscated, it is hard to retrieve the exact source code after applying ...
- research-articleJune 2021
Learning Transfer in Novice Programmers: A Preliminary Study
ITiCSE '21: Proceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V. 1Pages 178–184https://doi.org/10.1145/3430665.3456336Learning transfer refers to the ability to correctly apply learned skills, knowledge and behaviors to new situations or contexts. This paper explores novice programmers' transfer through the analysis of two related coding tasks completed by CS1 students ...
- research-articleDecember 2020
On Detecting Code Reuse Attacks
Automatic Control and Computer Sciences (ACCS), Volume 54, Issue 7Pages 573–583https://doi.org/10.3103/S0146411620070111Abstract—Today, a code reuse technique is often used when exploiting software vulnerabilities, such as a buffer overflow. These attacks bypass the protection against execution of code in the stack, which is implemented on the hardware and software levels ...
- research-articleAugust 2020
Polyglot code finder
Programming '20: Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of ProgrammingPages 106–112https://doi.org/10.1145/3397537.3397559With the increasing complexity of software, it becomes even more important to build on the work of others. At the same time, websites, such as Stack Overflow or GitHub, are used by millions of developers to host their code, which could potentially be ...
- research-articleMarch 2020
A Novel Type-based API Search Engine for Open Source Elm Packages
CSAI '19: Proceedings of the 2019 3rd International Conference on Computer Science and Artificial IntelligencePages 294–298https://doi.org/10.1145/3374587.3374633Searching for API is a hard problem, as text is not commonly representative of what a program does. In this paper, we present Moogle, a type-based API search engine for open-source Elm packages, with an online demonstration1. In Moogle, queries are ...
- research-articleFebruary 2020
Lancer: your code tell me what you need
ASE '19: Proceedings of the 34th IEEE/ACM International Conference on Automated Software EngineeringPages 1202–1205https://doi.org/10.1109/ASE.2019.00137Programming is typically a difficult and repetitive task. Programmers encounter endless problems during programming, and they often need to write similar code over and over again. To prevent programmers from reinventing wheels thus increase their ...
- research-articleFebruary 2020
B2SFinder: detecting open-source software reuse in COTS software
- Muyue Feng,
- Zimu Yuan,
- Feng Li,
- Gu Ban,
- Yang Xiao,
- Shiyang Wang,
- Qian Tang,
- He Su,
- Chendong Yu,
- Jiahuan Xu,
- Aihua Piao,
- Jingling Xue,
- Wei Huo
ASE '19: Proceedings of the 34th IEEE/ACM International Conference on Automated Software EngineeringPages 1038–1049https://doi.org/10.1109/ASE.2019.00100COTS software products are developed extensively on top of OSS projects, resulting in OSS reuse vulnerabilities. To detect such vulnerabilities, finding OSS reuses in COTS software has become imperative. While scalable to tens of thousands of OSS ...
- research-articleMay 2019
Better code search and reuse for better program repair
GI '19: Proceedings of the 6th International Workshop on Genetic ImprovementPages 10–17https://doi.org/10.1109/GI.2019.00012A branch of automated program repair (APR) techniques look at finding and reusing existing code for bug repair. ssFix is one of such techniques that is syntactic search-based: it searches a code database for code fragments that are syntactically similar ...
- research-articleMay 2019
Time present and time past: analyzing the evolution of JavaScript code in the wild
MSR '19: Proceedings of the 16th International Conference on Mining Software RepositoriesPages 126–137https://doi.org/10.1109/MSR.2019.00029JavaScript is one of the web's key building blocks. It is used by the majority of web sites and it is supported by all modern browsers. We present the first large-scale study of client-side JavaScript code over time. Specifically, we have collected and ...
- research-articleApril 2019
The ROP needle: hiding trigger-based injection vectors via code reuse
SAC '19: Proceedings of the 34th ACM/SIGAPP Symposium on Applied ComputingPages 1962–1970https://doi.org/10.1145/3297280.3297472In recent years, researchers have come up with proof of concepts of seemingly benign applications such as InstaStock and Jekyll that remain dormant until triggered by an attacker-crafted condition, which activates a malicious behavior, eluding code ...