freestl
Post-modern C++23+ Free standing STL reimplementation
std::vector
Roadmap for - Major pre-C++11 functionalities
- Perfect forwarding
- Concepts as contraints
- constexpr support
- Support rvalue vector itself
- Support move in re-allocation
- Offer strong exception safety guarantee
std::vector
Considerations of - How to make lock step progresses between container and algorithms
- How many utilities, but std and details would be needed along each milestone
- Maybe start with something simpler first, like pair, tuple, array, etc.
Considerations for modern C++ style
- Use consteval instead of constexpr wherever it is applicable (microsoft/STL#3604)
- No more legacy iterator_traits, (https://quuxplusone.github.io/blog/2023/01/27/sinkerator/)
Why post-modern C++ implemenation of STL (partial)
- Experiment new post-modern C++ programming style.
- Design library the right way