konsumlamm / rrb-vector

An implementation of a Relaxed Radix Balanced Vector in Haskell.
BSD 3-Clause "New" or "Revised" License
20 stars 5 forks source link

Transient API #4

Open sgraf812 opened 3 years ago

sgraf812 commented 3 years ago

RRB trees are appealing because like vectors, they offer an even more efficient transient (as opposed to persistent) API based on unsafe mutable primitives.

Can we have such a module in this library? Plus maybe another module that wraps the unsafe API with linear types.

See also Ed Kmett's transients lib.

konsumlamm commented 3 years ago

That's a great idea! This seems like a perfect use case for linear types.

Unfortunately, I don't know much about transients, so I probably won't be able to do this myself soon, but I plan to read up on it in the future (Kmett's lib definitely looks interesting). Any help is appreciated!