Slides against P2971R3
No implication for C++
- Document number:
- P3736R0
- Date:
2025-06-27 - Audience:
- EWG
- Project:
- ISO/IEC 14882 Programming Languages — C++, ISO/IEC JTC1/SC22/WG21
- Reply-To:
- Jan Schultke <janschultke@gmail.com>
- Source:
- github.com/Eisenwave/cpp-proposals/blob/master/src/implication-slides.cow
- →, ↓ : go to the next slide
- ←, ↑ : go to previous slide
No implication for C++
P2971R3
Comparison
Status quo | P29271R3 |
---|---|
- P29271R3 hinges on right side being much better, enough for new operator
- that is obviously not the case
Adding operators is costly
- more ways to express same code
- operator precedence rules to learn
- teaching materials, compilers, tooling, etc.
- valuable syntax space is lost forever
- especially '
' could be used in the future (abbreviated lambdas?)= >
- especially '
- smaller common subset with other languages
- unlike
,||
, and&&
, no!
,or
, andand not - not realistic to add
/implies
alt. keywordimpl
- not realistic to add
Confusing fold expressions
Given
:
- for one-element pack, equivalent to
true = > args - suggests that neutral element is
true
- suggests that neutral element is
- for zero-element pack, equivalent to
false - suggested by author for symmetry with
or
- suggested by author for symmetry with
and
do this much better already!
Implication invites bugs
- currently: compiler error
- after P2971R3: does the wrong thing