Meeting 5 July 2018
Rapperswil reports
- Corentin
- Herb Sutter
- “I sometimes delay my trip report until the post-meeting mailing is available so that everyone can see the latest papers”
- On contracts: “Having first-class contracts support it is the first major “step 1” of reforming error handling in C++ and applying 30 years’ worth of learnings.”
- On
std::bad_alloc
: “Consider handling heap exhaustion (out-of-memory, OOM) differently from other errors.” - On feature test macros: “Some experts still disagree, and we respect their views, but in my view these feature test macros are an important and pragmatic help to improve the speed of adoption of new standard C++ features.”
- Reddit thread
- J.Daniel Garcia’s Contracts presentation and slides
Post-Rapperswil mailing
The One Ranges Proposal, by Casey Carter
The tightly-constrained design space of convenient syntaxes for generic programming
- Corentin – there is a questionnaire at the end
The compiler (and by extension, tools) needs no syntax whatsoever to distinguish concepts, types, values, type-concepts, value-concepts.
Some people like syntax so much, Bjarne calls them the “syntax people”.
James McNellis on C++ Core Guidelines
Forward declarations
East Const Central
Twitter: string_view
lifetime
|
Namespace tricks
- The Old New Thing
- Follow-up: My namespace importing trick imported the same three namespaces into each top-level namespace, yet it worked?
Be Mindful with Compiler-Generated Move Constructors
function2
Improved and configurable drop-in replacement to std::function
that supports move only types, multiple overloads and more.
Quote
Tom Cargill:
The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time.