English
Related papers

Related papers: Simple and Effective Type Check Removal through La…

200 papers

With software system complexity leading to the rise of software defects, research efforts have been done on techniques towards predicting software defects and Just-in-time (JIT) defect prediction which predicts whether a code change is…

Software Engineering · Computer Science 2021-10-05 Giuseppe Ng , Charibeth Cheng

Generic taint analysis is a pivotal technique in software security. However, it suffers from staggeringly high overhead. In this paper, we explore the hypothesis whether just-in-time (JIT) generation of fast paths for tracking taint can…

Cryptography and Security · Computer Science 2020-07-23 John Galea , Daniel Kroening

Large language models (LLMs) have demonstrated impressive capabilities in code generation, achieving high scores on benchmarks such as HumanEval and MBPP. However, these benchmarks primarily assess functional correctness and neglect broader…

Software Engineering · Computer Science 2025-08-21 Scott Blyth , Sherlock A. Licorish , Christoph Treude , Markus Wagner

We introduce Flux, which shows how logical refinements can work hand in glove with Rust's ownership mechanisms to yield ergonomic type-based verification of low-level pointer manipulating programs. First, we design a novel refined type…

Programming Languages · Computer Science 2022-11-15 Nico Lehmann , Adam Geller , Niki Vazou , Ranjit Jhala

Gradually typed languages allow programmers to mix statically and dynamically typed code, enabling them to incrementally reap the benefits of static typing as they add type annotations to their code. However, this type migration process is…

Programming Languages · Computer Science 2021-09-14 Luna Phipps-Costin , Carolyn Jane Anderson , Michael Greenberg , Arjun Guha

The quality of software is closely tied to the effectiveness of the tests it undergoes. Manual test writing, though crucial for bug detection, is time-consuming, which has driven significant research into automated test case generation.…

Software Engineering · Computer Science 2025-03-21 Wendkûuni C. Ouédraogo , Laura Plein , Kader Kaboré , Andrew Habib , Jacques Klein , David Lo , Tegawendé F. Bissyandé

A key challenge when statically typing so-called dynamic languages is the ubiquity of value-based overloading, where a given function can dynamically reflect upon and behave according to the types of its arguments. Thus, to establish basic…

Programming Languages · Computer Science 2015-05-01 Panagiotis Vekris , Benjamin Cosman , Ranjit Jhala

Empirical research on code review processes is increasingly central to understanding software quality and collaboration. However, collecting and analyzing review data remains a time-consuming and technically intensive task. Most researchers…

Software Engineering · Computer Science 2025-10-07 Samah Kansab , Francis Bordeleau , Ali Tizghadam

Dynamic data race detectors are indispensable for flagging concurrency errors in software, but their high runtime overhead limits their adoption. This overhead stems primarily from pervasive instrumentation of memory accesses - a…

Programming Languages · Computer Science 2025-12-08 Alexey Paznikov , Andrey Kogutenko , Yaroslav Osipov , Michael Schwarz , Umang Mathur

Creating programs with block-based programming languages like Scratch is easy and fun. Block-based programs can nevertheless contain bugs, in particular when learners have misconceptions about programming. Even when they do not, Scratch…

Software Engineering · Computer Science 2021-02-23 Gordon Fraser , Ute Heuer , Nina Körber , Florian Obermüller , Ewald Wasmeier

Large language models (LLMs) have proven to be highly effective across various natural language processing tasks. However, their large number of parameters poses significant challenges for practical deployment. Pruning, a technique aimed at…

Computation and Language · Computer Science 2024-12-16 Jiwon Song , Kyungseok Oh , Taesu Kim , Hyungjun Kim , Yulhwa Kim , Jae-Joon Kim

Context: Bug bisection is a common technique used to identify a revision that introduces a bug or indirectly fixes a bug, and often involves executing multiple revisions of a project to determine whether the bug is present within the…

Software Engineering · Computer Science 2024-05-06 Ching Hang Mak , Shing-Chi Cheung

Large Language Models (LLMs) have achieved strong performance across natural language and multimodal tasks, yet their practical deployment remains constrained by inference latency and kernel launch overhead, particularly in interactive,…

Machine Learning · Computer Science 2026-04-28 Divakar Kumar Yadav , Tian Zhao

In modern Very Large Scale Integrated (VLSI) circuit design flow, the Register-Transfer Level (RTL) stage presents a critical opportunity for timing optimization. Addressing timing violations at this early stage is essential, as modern…

Hardware Architecture · Computer Science 2025-08-20 Wenhao Lv , Yingjie Xia , Xiyuan Chen , Li Kuang

Fault-tolerant quantum computation using lattice surgery can be abstracted as operations on graphs, wherein each logical qubit corresponds to a vertex of the graph, and multi-qubit measurements are accomplished by connecting the vertices…

Quantum Physics · Physics 2025-08-26 Ryo Wakizaka , Yasunari Suzuki , Atsushi Igarashi

Large language models (LLMs) have become an essential tool to support developers using traditional text-based programming languages, but the graphical notation of the block-based Scratch programming environment inhibits the use of LLMs. To…

Software Engineering · Computer Science 2026-02-09 Benedikt Fein , Florian Obermüller , Gordon Fraser

In this paper, we present a novel marriage of static and dynamic analysis. Given a large code base with many functions and a mature test suite, we propose using static analysis to find functions 1) with assertions or other evident…

Software Engineering · Computer Science 2016-09-22 Mohammad Amin Alipour , Alex Groce , Chaoqiang Zhang , Anahita Sanadaji , Gokul Caushik

Automated test generation is essential for software quality assurance, with coverage rate serving as a key metric to ensure thorough testing. Recent advancements in Large Language Models (LLMs) have shown promise in improving test…

Software Engineering · Computer Science 2026-02-26 WeiZhe Xu , Mengyu Liu , Fanxin Kong

Detecting design pattern instances in unfamiliar codebases remains a challenging yet essential task for improving software quality and maintainability. Traditional static analysis tools often struggle with the complexity, variability, and…

Software Engineering · Computer Science 2025-02-26 Christian Schindler , Andreas Rausch

Bug prediction aims at finding source code elements in a software system that are likely to contain defects. Being aware of the most error-prone parts of the program, one can efficiently allocate the limited amount of testing and code…

Software Engineering · Computer Science 2024-05-14 Gábor Antal , Zoltán Tóth , Péter Hegedűs , Rudolf Ferenc