AdamNiederer / AdamNiederer/faster
API
- Dominant language
- Rust
- Stars
- 1.6k
- Forks
- 52
- PR merge metrics
- No merged PRs in 30d
Description
Current API is not bad, but it has some problems. Because this crate implements standard `Iterator` trait simd iterators can be used in for loops(and they are currently used for example in benchmarks), but inside those loops there is no uneven collection handling, this I think can be added, but it would reduce performance. Second thing is that inside for loops there is no in place mutation, you need to manually store. I think it would be better to just have internal iterator trait, and implement functionality on top of it, it would also allow dropping simd prefix on iterators methods. It would make the API more similar to the standard library, with exception of providing defaults. Thoughts?
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading the crate's current standard Iterator implementations and the benchmarks, which the issue identifies as existing users of the iterators. Compare the proposed internal iterator trait, uneven collection handling, in-place mutation, and method naming with the current API. Done would require an agreed API design before implementation begins.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100