In Search of the Perfect Return: A C++ Programming Journey


Details
Description
Marcel Proust wrote (trans.) that "The true voyage of discovery… is not a journey to a new place; it is learning to see with new eyes."
Accordingly, in the first part of this talk, we’ll explore a targeted selection of C++ features whose surface behaviors are already familiar to most of us. However, we’ll seek deeper insights and understanding not commonly taught or considered.
Topics to be presented in depth with "new eyes" will include aspects of:
- cross-type comparison,
- `decltype(auto)`,
- move semantics and perfect forwarding,
- partial ordering,
- qualifier unification,
- `static_cast` and function call expressions,
- ternary operator vis-a-vis reference types,
- value categories,
- and more.
Once we've finished discussing C++ features, we’ll explore a generic C++ programming problem that I've dubbed the "imperfect return." Because this issue has affected a number of standard and nonstandard algorithms for a long time now, we’ll examine how and why traditional design and code remains unsatisfactory.
Finally, after looking at some solutions that have been proposed in the past, we’ll apply the discussed C++ features in conventional and less-conventional ways, to solve the long-standing "imperfect return" problems.
Best of all, the result (including all boilerplate) will comprise remarkably few lines of code!
Come and see the evolution of a new idiom, the "perfect return"!
About the presenter
With broad experience in industry, academia, consulting, and research, Dr. Walter E. Brown has been a computer programmer for more than 60 years, and a C++ programmer for over 40 years.
He joined the C++ standards effort in 2000, and has since written more than 175 proposal papers.
Among numerous other contributions, he is responsible for introducing such now-standard C++ library features as
- `cbegin`/`cend`,
- `common_type`,
- `gcd`/`lcm`,
- `void_t`,
- cmath’s mathematical special functions,
- as well as the headers random and ratio.
He has also significantly impacted such C++ core language features as alias templates, contextual conversions, variable templates, `static_assert`, and `operator<=>` (the "spaceship operator").
When not playing with his grandchildren, Dr. Brown continues as an Emeritus participant in the C++ standards process and as a frequent speaker at C++ meetups and conferences worldwide.
Details
This event is for in-person attendance. For virtual attendance, please see the alternative page.
Space is limited! RSVP is required for in-person attendance!
When: Thursday, March 27th 2025
Happy-hour starts at 5:30, presentation at 6:30
20 N Upper Wacker Drive
12th Floor
Chicago, IL 60606
Food and beverages provided by Selby Jennings
Conference space generously provided by TeamWorking by TechNexus

In Search of the Perfect Return: A C++ Programming Journey