See how I meandered through writing a version of ranges::to because I was impatient for the GCC 14 version. It had to be easy, right? After all, it is just copying pipeline elements to a container. Ha! Ha! No.
This trek encounters concepts, if constexpr, and containers that are copyable and others that are not. Eventually, an encounter with a range_adaptor_closure
to work as the pipeline's endpoint was, well, interesting.
Why is ranges::to important? It is easier to use than other methods of invoking pipelines.
The talk is code intensive to illustrate all the steps to demonstrate the development process and the solution.
Rud Merriam is a retired software developer, having lived through the spaghetti, structured programming, and object-oriented development paradigms. He's now trying to figure out functional programming and the ranges library.
He wrote his first FORTRAN IV in 1968 and his first C++ in 1990 with Borland's Turbo C++. Along the way, he developed computers that measured flow in real pipelines.
More recently, he has been writing about C++ on Medium.com and Linkedin. He evangelized C++ for embedded systems on Hackaday.com.