Relaxed Radix Balanced Trees (2024)

4 days ago (peter.horne-khan.com)

I would love to add a good RRB implementation to the persistent benchmarks at [1] to get a state-of-the-art comparison between RRB and BST in a persistent context. Duration, of course, but also number of bytes copied etc.

https://rtheunissen.github.io/bst

I always wanted a comparison to ropes. Every time I see ropes mentioned I always think "why not use RRB trees?". It seems like less housekeeping, but with all the benefits.

  • Let T[] denote "dynamic array of T": rope = string[] = char[][].

    As I understand it, usually each line of text is in its own memory buffer.

What tool were those tree structure Illustrations created with? They look really nice!

  • Thanks! I used draw.io and tweaked a number of the display properties to make it look more like Excalidraw.

    • I love the styling of this blog post generally too - simple, attractive and pleasant to read - kudos

  • this looks like draw.io with a custom font. edit: nope, i'm wrong, its excalidraw but the effect is almost identical in draw.io.