Article may be outdated

This article is 45 days old. Some details may have changed since publication.

Hacker News·3 min read·hard

Prolly: A content-addressed ordered map built on prolly trees

F
forhappy
Prolly: A content-addressed ordered map built on prolly trees
✦AI Summary

Prolly is a new Rust library that provides content-addressed ordered map storage based on prolly trees. It is designed for efficient structural sharing, diffing, and merging, offering a runtime-neutral engine for building persistent data structures.

Why it matters

Content-addressed storage is a foundational technology for modern distributed systems and version control, and this library provides a specialized tool for Rust developers.

✦Dive DeeperCreate a free account to unlock

Prolly publishes the prolly Rust library crate. Users depend on the package as prolly-map , while code imports stay concise: use prolly::{Config, Prolly}; .

The crate provides content-addressed prolly tree storage primitives: an immutable, ordered key-value index over byte keys and byte values, with stable content-derived structure for efficient structural sharing, diff, merge, and bulk loading.

At the API boundary, a Tree is a small persistent handle:

The actual nodes live in a pluggable Store . Operations clone and rewrite only the affected path or subtrees, write new content-addressed nodes, and return a new Tree handle.

All storage-backed tree work is implemented once by a runtime-neutral, async-first engine. AsyncProlly<S: AsyncStore> uses it directly; Prolly<S: Store> drives the same complete operation through an inline ready-only adapter. The synchronous path does not create a runtime, park a thread, or dispatch store calls to Tokio.

Continue reading on Headlinne

Create a free account to read the full article.

Read full article →
technology
✦

Get smarter about the news

Sign up free for a feed built around what you actually care about, Dive Deeper research on any story, and the full text of every article.

Create free account

Already have an account? Sign in