Aljoscha Meyer does computer science.
(mail@aljoscha-meyer.de) (Github)

Some Projects

A Willow emblem: a stylised drawing of a Willow’s branch tipping into a water surface, next to a hand-lettered display of the word *Willow*.

A peer-to-peer, multi-writer data store.

.

Specification of a hash function that allows for verified streaming, similar to BLAKE3’s Bao.

A depiction of the linking scheme underlying reed.

A prefix authentication scheme that is more efficient than the one used in certificate transparency. Supersedes Bamboo.

The macromania logotype, hand-lettered in a slightly manic font.

A macro system for generating plaintext files. Suitable for producing web-native scientific papers such as this one.

A Rust library of abstractions for lazily producing or consuming sequences.

A tool for scheduling meetings across timezones, mapping UTC offsets to emoji. Carrying on some of @cinnamon’s light.

Some Writing

A figure from the paper: a depiction of a 2-zip-tree.

A family of randomized set data structures that generalizes the zip-trees to work more efficiently in the presence of cache hierarchies. G-trees have applications for set fingerprinting and membership proofs.

A figure from the paper: the back-and-forth of messages in an example protocol run.

Range-based set reconciliation is a simple approach to efficiently computing the union of two sets over a network, based on recursively partitioning the sets and comparing fingerprints of the partitions to probabilistically detect whether a partition requires further work. Several open source projects started considering this algorithm.

APIs like iterators, streams, sinks, readers, or writers are all APIs for lazily working with potentially infinite sequences of items. There is a large number of competing designs, but little principled work on evaluating them. Starting from the question of how to objectively evaluate such APIs, I derive some instructive and useful hierarchies of interfaces for lazily working with sequences.

A figure from the paper: a depiction of the slls-2 linking scheme.

Like certificate transparency logs, but more simple and more efficient.

Some guiding principles on coding: