Iteration Revisited: A Safer Iteration Model for Cpp
Talkat CppCon 2023 · on Friday, 2023-10-06· at 09:00· Cottonwood 8/9, 6700 North Gaylord Rockies Boulevard·
summary
Claims a safer C++20 iteration model implemented as the Flux library on GitHub that replaces pointer-like iterators with index-like cursors and four primitives: first/is_last/read_at/inc. read_at is bounds-checked by default (terminates or can throw) with an unchecked read_at for critical hot paths. Provides automatic interoperability with contiguous ranges and a from_range adapter for others, exposes a sequence→range iterator, and uses an internal iteration hook for_each_while to enable autovectorization so Flux can match or sometimes beat std::ranges performance.
AI-written summary · about
chapters (9)
- 0:00Introduction
- 1:06C++ iteration evolution
- 13:34STL iterator risks
- 24:10Introducing flux library
- 33:24Flux design concepts
- 39:27Flux adapters and pipelines
- 44:04Flux performance and checks
- 53:20Summary
- 54:03Q&A
related talks
01h 23mC++ Iteration Revisited 2024
01h 06mConquering C++20 Ranges
01h 05mBetter C++ ranges
01h 00mMissing (and future?) C++ range concepts
01h 04mRange adaptors - 5 years after C++20
40mRanges and Iterators for Numerical Problems
55mC++ Cache Friendly Data + Functional + Ranges = ❤️
01h 05mThe Imperatives Must Go!
