Skip to content

Commit

Permalink
changed intro for rs-stl
Browse files Browse the repository at this point in the history
  • Loading branch information
RishabhRD committed Jan 20, 2025
1 parent 83f4653 commit bb7689d
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 4 deletions.
11 changes: 7 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,20 @@
# rs-stl

Porting STL to rust.
Porting STL to rust, i.e., generic programming for rust.

Rust has great set of algorithms based on `rust iterators`. However, many
algorithms like `std::rotate` is still missing. This is because we don't have
concept of `C++-like iterators`.
Rust has good set of generic algorithms based on `rust iterators`. However,
still its hard to write a generic `std::rotate` kind of algorithm with rust
iterators. Also, inplace mutations are hard to achieve with `rust iterators`.
But `C++ iterators` are great for the same.

C++ STL is a brilliant piece of work by Alex Stepanov and provides highly
composable algorithms over C++ iterators.

rs-stl ports C++ STL algorithms to rust by using concepts of Positions instead
of Iterators to support rust borrow rules.

NOTE: Currently rs-stl is in experiment phase and might change any time.

## Basic Idea

- STL provides generic algorithms with use of iterators. Iterators can be seen
Expand Down
4 changes: 4 additions & 0 deletions docs/goals.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,7 @@
## Open Questions

- Should `actions` be supported? See `range-v3` actions to know more about it.

## Desirable
- 100% test coverage? I don't like to chase test converage, but with algorithmic
library its achievable.

0 comments on commit bb7689d

Please sign in to comment.