RoaringBitmap / RoaringBitmap/roaring-rs
Optimization(?): Clone-on-write containers
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 957
- Forks
- 119
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 1
Description
Cow would allow optimizations that borrow containers. For a trivial example. Imagine an | operation over two containers whose containers are disjoint.
I think the best design for this would be making RoaringBitmap generic over it's container type. The default would use Arcs to share containers under the hood. Users would not need to interact with the type parameter unless they want to, similar to the S type in Hashmap<K, V, S>
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading Rust's std::borrow::Cow documentation and the current RoaringBitmap container representation. Compare the proposed generic container type with the existing HashMap type-parameter pattern and Arc sharing idea. Done requires an agreed design for clone-on-write containers; this issue does not name implementation files or tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100