English
Related papers

Related papers: Pure Borrow: Linear Haskell Meets Rust-Style Borro…

200 papers

The R programming language is widely used in large-scale data analyses. It contains especially rich built-in support for dealing with vectors, arrays, and matrices. These operations feature prominently in the applications that form R's…

Programming Languages · Computer Science 2023-04-11 John Wrenn , Anjali Pal , Alexa VanHattum , Shriram Krishnamurthi

Extensible variants improve the modularity and expressiveness of programming languages: they allow program functionality to be decomposed into independent blocks, and allow seamless extension of existing code with both new cases of existing…

Programming Languages · Computer Science 2016-12-28 J. Garrett Morris

Arrows are a general interface for computation and an alternative to Monads for API design. In contrast to Monad-based parallelism, we explore the use of Arrows for specifying generalised parallelism. Specifically, we define an Arrow-based…

Programming Languages · Computer Science 2018-01-09 Martin Braun , Oleg Lobachev , Phil Trinder

We present a system of efficient methods for traversing and combining associative collection data structures. A distinguishing feature of the system is that, like traditional sequential iterator libraries, it does not require specialized…

Programming Languages · Computer Science 2025-07-10 Scott Kovach , Praneeth Kolichala , Kyle A. Miller , David Broman , Fredrik Kjolstad

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

Functional reactive programming (FRP) is a paradigm for programming with signals and events, allowing the user to describe reactive programs on a high level of abstraction. For this to make sense, an FRP language must ensure that all…

Programming Languages · Computer Science 2019-06-12 Patrick Bahr , Christian Graulund , Rasmus Møgelberg

Functional programming provides strong foundations for developing reliable and secure software systems, yet its adoption remains not widespread due to the steep learning curve. Recent advances in Large Language Models (LLMs) for code…

Programming Languages · Computer Science 2026-01-06 Nguyet-Anh H. Lang , Eric Lang , Thanh Le-Cong , Bach Le , Quyet-Thang Huynh

Applications such as Google Docs, Office 365, and Dropbox show a growing trend towards incorporating multi-user live collaboration functionality into web applications. These collaborative applications share a need to efficiently express…

Databases · Computer Science 2013-03-20 Oliver Kennedy , Lukasz Ziarek

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

Large language models (LLMs) have reshaped the landscape of program synthesis. However, contemporary LLM-based code completion systems often hallucinate broken code because they lack appropriate context, particularly when working with…

Programming Languages · Computer Science 2024-10-14 Andrew Blinn , Xiang Li , June Hyung Kim , Cyrus Omar

In this paper, we investigate the parallelization of $k$-core decomposition, a method used in graph analysis to identify cohesive substructures and assess node centrality. Although efficient sequential algorithms exist for this task, the…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-12-02 Davide Rucci , Sebastian Parfeniuc , Matteo Mordacchini , Emanuele Carlini , Alfredo Cuzzocrea , Patrizio Dazzi

User defined recursive types are a fundamental feature of modern functional programming languages like Haskell, Clean, and the ML family of languages. Properties of programs defined by recursion on the structure of recursive types are…

Programming Languages · Computer Science 2013-12-11 James Caldwell

Refactoring tools are central to modern development, with extract-function refactorings used heavily in day-to-day work. For Rust, however, ownership, borrowing, and advanced type features make automated extract-function refactoring…

Programming Languages · Computer Science 2026-01-28 Matthew Britton , Sasha Pak , Alex Potanin

Probabilistic programming and the formal analysis of probabilistic algorithms are active areas of research, driven by the widespread use of randomness to improve performance. While functional correctness has seen substantial progress,…

Logic in Computer Science · Computer Science 2025-08-21 Matthias Hetzenberger , Georg Moser , Florian Zuleger

Throughout the history of functional programming, recursion has emerged as a natural method for describing loops in programs. However, there does often exist a substantial cognitive distance between the recursive definition and the simplest…

Programming Languages · Computer Science 2020-02-17 Satoshi Egi , Yuichi Nishiwaki

In the era of diminishing returns from Moores Law, heterogeneous computing systems have emerged as a vital approach to enhance computational efficiency. This paper introduces a novel MLIR-based dialect, named hyper, designed to optimize…

Cryptography and Security · Computer Science 2025-06-05 Zhiyuan Tan , Liutong Han , Mingjie Xing , Yanjun Wu

Decompiling Rust binaries is challenging due to the language's rich type system, aggressive compiler optimizations, and widespread use of high-level abstractions. In this work, we conduct a benchmark-driven evaluation of decompilation…

Programming Languages · Computer Science 2025-07-28 Zixu Zhou

Simplicity is a typed, combinator-based, functional language without loops and recursion, designed to be used for crypto-currencies and blockchain applications. It aims to improve upon existing crypto-currency languages, such as Bitcoin…

Programming Languages · Computer Science 2017-12-15 Russell O'Connor

We propose a novel approach to soundly combining linear types with effect handlers. Linear type systems statically ensure that resources such as file handles are used exactly once. Effect handlers provide a modular programming abstraction…

Programming Languages · Computer Science 2024-01-03 Wenhao Tang , Daniel Hillerström , Sam Lindley , J. Garrett Morris

Formal reasoning about the time complexity of algorithms and data structures is usually done in interactive theorem provers like Isabelle/HOL. This includes reasoning about amortized time complexity which looks at the worst case performance…

Computational Complexity · Computer Science 2024-07-19 Jan van Brügge
‹ Prev 1 3 4 5 6 7 10 Next ›