English
Related papers

Related papers: REVIS: An Error Visualization Tool for Rust

200 papers

Software component reuse is the key to significant gains in productivity. However, the major problem is the lack of identifying and developing potentially reusable components. This paper concentrates on our approach to the development of…

Software Engineering · Computer Science 2012-06-28 Muthu Ramachandran

RISC-V is an extendable Instruction Set Architecture, growing in popularity for embedded systems. However, optimizing it to specific requirements, imposes a great deal of manual effort. To bridge the gap between software and ISA, the tool…

Hardware Architecture · Computer Science 2025-08-12 Andreas Hager-Clukas , Philipp van Kempen , Stefan Wallentowitz

Developing an algorithm for a visualization prototype often involves the direct comparison of different development stages and design decisions, and even minor modifications may dramatically affect the results. While existing development…

Software Engineering · Computer Science 2020-01-08 Fabian Bolte , Stefan Bruckner

Rust is a low-level programming language known for its unique approach to memory-safe systems programming and for its steep learning curve. To understand what makes Rust difficult to adopt, we surveyed the top Reddit and Hacker News posts…

Human-Computer Interaction · Computer Science 2019-01-07 Anna Zeng , Will Crichton

Despite extensive usage in high-performance, low-level systems programming applications, C is susceptible to vulnerabilities due to manual memory management and unsafe pointer operations. Rust, a modern systems programming language, offers…

Software Engineering · Computer Science 2024-12-24 Manish Shetty , Naman Jain , Adwait Godbole , Sanjit A. Seshia , Koushik Sen

The Rust programming language has garnered significant interest and use as a modern, type-safe, memory-safe, and potentially formally analyzable programming language. Our interest in Rust stems from its potential as a hardware/software…

Logic in Computer Science · Computer Science 2022-05-25 David Hardin

Formal verification can provably guarantee the correctness of critical system software, but the high proof burden has long hindered its wide adoption. Recently, Large Language Models (LLMs) have shown success in code analysis and synthesis.…

Formal Languages and Automata Theory · Computer Science 2023-11-27 Jianan Yao , Ziqiao Zhou , Weiteng Chen , Weidong Cui

Background. The software architecture recovery method RELAX produces a concern-based architectural view of a software system graphically and textually from that system's source code. The method has been implemented in software which can be…

Software Engineering · Computer Science 2021-09-01 Daniel Link , Kamonphop Srisopha , Barry Boehm

Pointers are a powerful, but dangerous feature provided by the C and C++ programming languages, and incorrect use of pointers is a common source of bugs and security vulnerabilities. Making secure software is crucial, as vulnerabilities…

Formal Languages and Automata Theory · Computer Science 2024-11-01 Vlad-Alexandru Teodorescu , Dorel Lucanu

In Rust, unsafe code is the sole source of potential undefined behaviors. To avoid misuse, Rust developers should clarify the safety properties for each unsafe API. However, the community currently lacks a key standard for safety…

Programming Languages · Computer Science 2026-04-28 Zihao Rao , Jiping Zhou , Hongliang Tian , Xin Wang , Hui Xu

Developers rely on the static safety guarantees of the Rust programming language to write secure and performant applications. However, Rust is frequently used to interoperate with other languages which allow design patterns that conflict…

Software Engineering · Computer Science 2026-01-12 Ian McCormack , Joshua Sunshine , Jonathan Aldrich

Write-ahead logs (WALs) are a fundamental fault-tolerance technique found in many areas of computer science. WALs must be reliable while maintaining high performance, because all operations will be written to the WAL to ensure their…

Operating Systems · Computer Science 2025-07-18 Vitor K. F. Pellegatti , Gustavo M. D. Vieira

As embedded systems grow in complexity and scale due to increased functional diversity, component-based development (CBD) emerges as a solution to streamline their architecture and enhance functionality reuse. CBD typically utilizes the C…

Software Engineering · Computer Science 2025-10-30 Nao Yoshimura , Hiroshi Oyama , Takuya Azumi

Statically analyzing information flow, or how data influences other data within a program, is a challenging task in imperative languages. Analyzing pointers and mutations requires access to a program's complete source. However, programs…

Programming Languages · Computer Science 2022-03-17 Will Crichton , Marco Patrignani , Maneesh Agrawala , Pat Hanrahan

Software reuse is a crucial external quality attribute targeted by open-source and commercial projects. Despite that software reuse has experienced an increased adoption throughout the years, little is known about what aspects of code reuse…

Software Engineering · Computer Science 2023-11-02 Eman Abdullah AlOmara , Anthony Peruma , Mohamed Wiem Mkaouer , Christian Newman , Ali Ouni

Processor designs rely on iterative modifications and reuse well-established designs. However, this reuse of prior designs also leads to similar vulnerabilities across multiple processors. As processors grow increasingly complex with…

Cryptography and Security · Computer Science 2025-12-09 Chen Chen , Zaiyan Xu , Mohamadreza Rostami , David Liu , Dileep Kalathil , Ahmad-Reza Sadeghi , Jeyavijayan Rajendran

Formal verification provides the highest assurance of software correctness and security, but its application to large-scale, evolving systems remains a major challenge. While large language models (LLMs) have shown promise in automating…

Software Engineering · Computer Science 2026-05-06 Yuwei Liu , Xinyi Wan , Yanhao Wang , Minghua Wang , Lin Huang , Tao Wei

Large language models are increasingly used to produce runnable software. In practice, security is often addressed through a Detect--Repair--Verify (DRV) loop that detects issues, applies fixes, and verifies the result. This work studies…

Software Engineering · Computer Science 2026-03-03 Cheng Cheng

Soft errors have become one of the major concerns for HPC applications, as those errors can result in seriously corrupted outcomes, such as silent data corruptions (SDCs). Prior studies on error resilience have studied the robustness of HPC…

Human-Computer Interaction · Computer Science 2022-01-04 Shaolun Ruan , Yong Wang , Qiang Guan

The growing adoption of Rust for its memory safety and performance has increased the demand for effective migration of legacy C codebases. However, existing rule-based translators (e.g., \ctorust) often generate verbose, non-idiomatic code…

Software Engineering · Computer Science 2026-03-31 Yanyan Yan , Yang Feng , Jiangshan Liu , Di Liu , Zixi Liu , Hao Teng , Baowen Xu
‹ Prev 1 4 5 6 7 8 10 Next ›