English
Related papers

Related papers: Memory-Safety Challenge Considered Solved? An In-D…

200 papers

Ownership and borrowing systems, designed to enforce safe memory management without the need for garbage collection, have been brought to the fore by the Rust programming language. Rust also aims to bring some guarantees offered by…

Programming Languages · Computer Science 2024-10-23 Danielle Marshall , Dominic Orchard

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 (LLMs) have shown impressive capability to understand and develop code. However, their capability to rigorously reason about and prove code correctness remains in question. This paper offers a comprehensive study of…

Operating Systems · Computer Science 2026-04-16 Chenyuan Yang , Natalie Neamtu , Chris Hawblitzel , Jacob R. Lorch , Shan Lu

Large language models (LLMs) are widely used for code generation, but their security reliability remains inconsistent across languages and prompting strategies. Existing prompt engineering improves functional correctness but rarely ensures…

Cryptography and Security · Computer Science 2026-05-26 Mohammed F. Kharma , Mohammad Alkhanafseh , Ahmed Sabbah , David Mohaisen

Reachability types are a recent proposal to bring Rust-style reasoning about memory properties to higher-level languages, with a focus on higher-order functions, parametric types, and shared mutable state -- features that are only partially…

Programming Languages · Computer Science 2025-10-10 Yuyan Bao , Songlin Jia , Guannan Wei , Oliver Bračevac , Tiark Rompf

This paper is about the interface between languages which use a garbage collector and those which use fancy types for safe manual memory management. Garbage collection is the traditional memory management scheme for functional languages,…

Programming Languages · Computer Science 2018-07-03 Alan Jeffrey

Software testing is a critical activity to ensure that software complies with its specification. However, current software testing activities tend not to be completely effective when applied in specific software domains in Virtual Reality…

Software Engineering · Computer Science 2020-09-21 Stevao A. Andrade , Fatima L. S. Nunes , Marcio E. Delamaro

The Message Passing Interface (MPI) is a fundamental tool for building high-performance computing (HPC) applications, enabling efficient communication across distributed systems. Despite its widespread adoption, MPI's low-level interface…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-09-16 Nafees Iqbal , Jed Brown

Automatic C-to-Rust translation is a promising way to enhance the reliability of legacy system software. However, C2Rust, an industrially developed translator, generates Rust code with unsafe features, undermining the translation's…

Software Engineering · Computer Science 2024-09-17 Jaemin Hong , Sukyoung Ryu

Quantum memory systems are vital in quantum information processing for dependable storage and retrieval of quantum states. Inspired by classical reliability theories that synthesize reliable computing systems from unreliable components, we…

Quantum Physics · Physics 2025-12-10 Anuj K. Nayak , Eric Chitambar , Lav R. Varshney

In many programming languages there exist countless nuances, making developers accidentally release new versions of their packages that are not backwards-compatible. Such releases can directly impact projects which are using their packages,…

Programming Languages · Computer Science 2023-08-29 Tomasz Nowak , Michał Staniewski , Mieszko Grodzicki , Bartosz Smolarczyk

Continuous fuzzing is an increasingly popular technique for automated quality and security assurance. Google maintains OSS-Fuzz: a continuous fuzzing service for open source software. We conduct the first empirical study of OSS-Fuzz,…

Software Engineering · Computer Science 2021-03-23 Zhen Yu Ding , Claire Le Goues

Context: Given a bug report and source code of the project, bug localization can help developers to focus on fixing probable buggy files rather than searching the entire source code repository. While existing research uses information…

Software Engineering · Computer Science 2020-11-09 Shubham Sangle , Sandeep Muvva , Sridhar Chimalakonda , Karthikeyan Ponnalagu , Vijendran Gopalan Venkoparao

Bugs are notoriously challenging: they slow down software users and result in time-consuming investigations for developers. These challenges are exacerbated when bugs must be reported in natural language by users. Indeed, we lack reliable…

Software Engineering · Computer Science 2023-10-11 Laura Plein , Tegawendé F. Bissyandé

Large language models can generate useful code from natural language, but their outputs come without correctness guarantees. Verifiable code generation offers a path beyond testing by requiring models to produce not only executable code,…

Software Engineering · Computer Science 2026-05-12 Zichen Xie , Mrigank Pawagi , Yuxin Liu , Aaditi Rai , Lize Shao , John Berberian , Sicong Che , Wenxi Wang

Tock began 10 years ago as a research operating system developed by academics to help other academics build urban sensing applications. By leveraging a new language (Rust) and new hardware protection mechanisms, Tock enabled…

Operating Systems · Computer Science 2026-03-25 Leon Schuermann , Brad Campbell , Branden Ghena , Philip Levis , Amit Levy , Pat Pannuto

Surveys of computational science show that many scientists use languages like C and C++ in order to write code for scientific computing, especially in scenarios where performance is a key factor. In this paper, we seek to evaluate the use…

Computational Physics · Physics 2024-10-28 Willow Veytsman , Shuang Zhai , Chen Ding , Adam B. Sefkow

Memory management in lock-free data structures remains a major challenge in concurrent programming. Design techniques including read-copy-update (RCU) and hazard pointers provide workable solutions, and are widely used to great effect.…

Programming Languages · Computer Science 2019-02-20 Ismail Kuru , Colin S. Gordon

Modern software relies on a multitude of automated testing and quality assurance tools to prevent errors, bugs and potential vulnerabilities. This study sets out to provide a head-to-head, quantitative and qualitative evaluation of six…

Software Engineering · Computer Science 2025-08-07 Damian Gnieciak , Tomasz Szandala

Modern high-assurance software systems development favors memory safe languages such as SPARK (ADA) or Rust. However, developers often encounter non-memory safe code (e.g., C) in legacy systems and libraries which would be prohibitively…

Software Engineering · Computer Science 2026-05-14 Caleb Helbling , Graham Leach-Krouse , Michael Crystal