@hackage / pure-borrow

Rust-style borrowing in Linear Haskell with purity

Latest0.0.0.0

About

Metadata

  • Last updated , by HiromiIshii
  • License BSD-3-Clause
  • Maintained by: ysk.m24t@gmail.com konn.jinro@gmail.com

  • Lottery factor: 1

Links

Installation

Tested Compilers

  1. 9.10.2

Package Flags

Use the -f option with cabal commands to enable flags

    artifact (off by default)

    Build the artifact runner executable, which runs all the benchmarks and produces CSV files.

Readme

pure-borrow: Pure realization of Rust-style borrows in Linear Haskell

This is pure-borrow, a library that realizes Rust-style borrows in Linear Haskell in a pure manner. See the haddock or publication below for the more information.

Supported GHC Versions

We support GHC 9.10.2+, but we recommend GHC 9.12.4+, due to subtle compiler bug in older GHC.

Known Issues

Due to the bug of linear types in GHC <9.12.3, some program segfaults when evaluated in interpreter with older GHCs (see https://gitlab.haskell.org/ghc/ghc/-/issues/26565#note_645783). Compiled programs just work as expected with GHC 9.10.2+, so this issue will only affect you are trying to use GHCi or Eval Plugin of Haskell Language Server. If you want to use interpreters, use GHC 9.12.3+.

Publication(s)

  • Y. Matsushita and H. Ishii, Pure Borrow: Linear Haskell Meets Rust-Style Borrowing, 2026. To appear in: PLDI 2026. Boulder, Colorado, USA, June 15-19. DOI: 10.1145/3808259. Extended Version: arxiv:2604.15290.
  • Y. Matsushita and H. Ishii, Artifact for PLDI 2026 "Pure Borrow: Linear Haskell Meets Rust-Style Borrowing", 2026. Zenodo: https://zenodo.org/records/19622061.