I’m a C++ developer at Jump Trading, member of the C++ standards committee, and unreasonably active on StackOverflow in the various C++ tags.
Sampling of accepted standards proposals:
- Prominent features:
constexpr
-related- constexpr INVOKE
- if consteval
- Missing constexpr in std::optional and std::variant
- Using unknown references in constant expressions
- Relaxing some constexpr restrictions (from my post on the constexpr array size problem)
- consteval needs to propagate up
- Permitting static constexpr variables in constexpr functions
- Ranges-related
- forwarding-range<T> is too subtle
- Concept traits should be named after concepts
- Conditionally borrowed ranges
- Superior String Splitting (from my post on implementing a better split)
- cbegin should always return a constant iterator
- Formatting Ranges
- ranges::fold
- Views should not be required to be default constructible
- Pipe support for user-defined range adaptors
- What is a view?
- views::join_with
- views::as_rvalue
- move_iterator<T*> should be a random access iterator
- Improve default container formatting
- Poison Pills are Too Toxic
I’ve given a few conference talks:
- CppNow 2021: Iterators and Ranges: Comparing C++ to D to Rust
- CPPP 2021: Iterators and Ranges: Comparing C++ D, Rust, and Others (an extended version)
- CppCon 2022: The Surprising Complexity of Formatting Ranges
I’m also a swimming enthusiast and data junkie, writing the occasional post for SwimSwam and doing some work for the DC Trident professional swim team.