Date: Mon, 20 Oct 2025 22:50:58 +0200
Please, read the papers.
On Mon, Oct 20, 2025 at 10:49 PM Ryan McDougall <mcdougall.ryan_at_[hidden]>
wrote:
> Not true.
>
> On Mon, Oct 20, 2025 at 1:49 PM JOSE DANIEL GARCIA SANCHEZ <
> josedaniel.garcia_at_[hidden]> wrote:
>
>> More UB than today.
>>
>> On Mon, Oct 20, 2025 at 10:46 PM Ryan McDougall <mcdougall.ryan_at_[hidden]>
>> wrote:
>>
>>> No such thing has been shown.
>>>
>>> On Mon, Oct 20, 2025 at 1:45 PM JOSE DANIEL GARCIA SANCHEZ <
>>> josedaniel.garcia_at_[hidden]> wrote:
>>>
>>>> No. Because it has been shown that current design makes C++ less safe.
>>>>
>>>> On Mon, Oct 20, 2025 at 10:43 PM Ryan McDougall <
>>>> mcdougall.ryan_at_[hidden]> wrote:
>>>>
>>>>> That's patently untrue -- trying to change direction now is actually
>>>>> wasting EWG time.
>>>>>
>>>>> If you only care about Language Safety you should be ignoring P2900.
>>>>>
>>>>> On Mon, Oct 20, 2025 at 1:28 PM JOSE DANIEL GARCIA SANCHEZ <
>>>>> josedaniel.garcia_at_[hidden]> wrote:
>>>>>
>>>>>> It is a matter of priorities.
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Mon, Oct 20, 2025 at 10:23 PM Ryan McDougall <
>>>>>> mcdougall.ryan_at_[hidden]> wrote:
>>>>>>
>>>>>>> It’s not an either or thing.
>>>>>>>
>>>>>>> That’s like saying “we haven’t decided if the goal of WG21 is object
>>>>>>> oriented programming or structured programming”.
>>>>>>>
>>>>>>> On Mon, Oct 20, 2025 at 1:21 PM JOSE DANIEL GARCIA SANCHEZ <
>>>>>>> josedaniel.garcia_at_[hidden]> wrote:
>>>>>>>
>>>>>>>> We have never (to the best of my knowledge) decided if the goal of
>>>>>>>> WG21 is functional safety or language safety.
>>>>>>>>
>>>>>>>> Let's keep in mind that there are external pressures to pursue
>>>>>>>> language safety.In particular (but not only) memory safety.
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, Oct 20, 2025 at 10:08 PM Ryan McDougall via SG21 <
>>>>>>>> sg21_at_[hidden]> wrote:
>>>>>>>>
>>>>>>>>> They are comparable because they both address the needs of
>>>>>>>>> Functional Safety as per p3578 <http://wg21.link/p3578>. SG23
>>>>>>>>> took a poll on whether they're better than macros see P3297
>>>>>>>>> <http://wg21.link/P3297>.
>>>>>>>>>
>>>>>>>>> I think it's not a leap of logic that EWG has strong consensus to
>>>>>>>>> pass P2900 precisely because they feel it's strictly better than macros.
>>>>>>>>>
>>>>>>>>> Cheers,
>>>>>>>>>
>>>>>>>>> On Mon, Oct 20, 2025 at 12:58 PM John Spicer <jhs_at_[hidden]> wrote:
>>>>>>>>>
>>>>>>>>>> We have never taken a poll of whether P2900 is better then macro
>>>>>>>>>> solutions.
>>>>>>>>>>
>>>>>>>>>> Could you explain why you think contracts and macro-based
>>>>>>>>>> solutions are comperable?
>>>>>>>>>>
>>>>>>>>>> John.
>>>>>>>>>>
>>>>>>>>>> On Oct 20, 2025, at 3:09 PM, Ryan McDougall <
>>>>>>>>>> mcdougall.ryan_at_[hidden]> wrote:
>>>>>>>>>>
>>>>>>>>>> I’m saying we have decades of experience with macro based
>>>>>>>>>> systems, which defines the floor of features/expectations. The consensus is
>>>>>>>>>> P2900 is better taken as a whole. There are things i think should be
>>>>>>>>>> different with p2900, but p2900 represents consensus. There has been no
>>>>>>>>>> evidence put forward that there is a more correct course. Based on those
>>>>>>>>>> decades of experience here are no outstanding questions that having a TS
>>>>>>>>>> would answer.
>>>>>>>>>>
>>>>>>>>>> If i am wrong, please list precise questions that a TS would
>>>>>>>>>> answer. “We don’t have enough experience” is a statement.
>>>>>>>>>>
>>>>>>>>>> Cheers,
>>>>>>>>>>
>>>>>>>>>> On Mon, Oct 20, 2025 at 11:54 AM John Spicer <jhs_at_[hidden]> wrote:
>>>>>>>>>>
>>>>>>>>>>> You keep saying things like we have “decades of experience with
>>>>>>>>>>> macro-based systems”.
>>>>>>>>>>>
>>>>>>>>>>> If contracts were remotely similar to macro-based systems, we
>>>>>>>>>>> would not be having this discussion.
>>>>>>>>>>>
>>>>>>>>>>> The problem is that contracts are *vastly* different.
>>>>>>>>>>>
>>>>>>>>>>> If you put P2900 and macro-based systems in the same set, that
>>>>>>>>>>> means you don’t understand one or the other.
>>>>>>>>>>>
>>>>>>>>>>> John.
>>>>>>>>>>>
>>>>>>>>>>> On Oct 20, 2025, at 2:22 PM, Ryan McDougall via SG21 <
>>>>>>>>>>> sg21_at_[hidden]> wrote:
>>>>>>>>>>>
>>>>>>>>>>> The "course corrections" do not actually suggest a future course
>>>>>>>>>>> (beyond asserting without evidence"we need more experience" and kicking the
>>>>>>>>>>> can down the road to a TS) -- we've had years for alternative proposals to
>>>>>>>>>>> be put forward, and none have surpassed P2900.
>>>>>>>>>>>
>>>>>>>>>>> We *do* have decades of experience with macro-based systems, we
>>>>>>>>>>> *do* have decades of experience building software at scale (see Software
>>>>>>>>>>> Engineering at Google <https://abseil.io/resources/swe-book>),
>>>>>>>>>>> and we *do* know who our users are (see P1995 and P3297) -- and while there
>>>>>>>>>>> are many variations on contracts, P2900 represents our best consensus
>>>>>>>>>>> interpretation of those decades of experience. Not all of these decisions
>>>>>>>>>>> were everyone's first choice, but P2900 is the consensus. There is no
>>>>>>>>>>> evidence that any other option would improve that.
>>>>>>>>>>>
>>>>>>>>>>> Multiple papers, like P2900 and P3578 <http://wg21.link/p3578> explain
>>>>>>>>>>> exactly who the feature is for, and how and why each of these design
>>>>>>>>>>> choices were made. There is no reason to believe the current course is
>>>>>>>>>>> incorrect, or that another course would be more correct.
>>>>>>>>>>>
>>>>>>>>>>> On Mon, Oct 20, 2025 at 4:58 AM Ville Voutilainen via SG21 <
>>>>>>>>>>> sg21_at_[hidden]> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> On Mon, 20 Oct 2025 at 14:34, Timur Doumler via SG15
>>>>>>>>>>>> <sg15_at_[hidden]> wrote:
>>>>>>>>>>>> > Given the above, it seems to me like opposing C++26 contract
>>>>>>>>>>>> assertions because you want that checks are always on / always enforced is
>>>>>>>>>>>> kinda like this:
>>>>>>>>>>>> >
>>>>>>>>>>>> > – Alice: "I want safer roads for pedestrians." (reasonable
>>>>>>>>>>>> and good request)
>>>>>>>>>>>> > – Bob: "Here's a proposal to fund bike lanes in the city."
>>>>>>>>>>>> (reasonable and good proposal roughly in the same area but with a different
>>>>>>>>>>>> goal)
>>>>>>>>>>>> > – Alice: "But bike lanes don't add more crosswalks or reduce
>>>>>>>>>>>> speed limits. So they don't make roads safer for pedestrians. Therefore, we
>>>>>>>>>>>> should not build bike lanes."
>>>>>>>>>>>> >
>>>>>>>>>>>> > Here, Alice is committing a logical fallacy. Just because
>>>>>>>>>>>> bike lanes are not useful for Alice, it doesn't mean that they're not
>>>>>>>>>>>> useful for Bob, and taking away bike lanes from Bob does nothing to give
>>>>>>>>>>>> Alice what she wants.
>>>>>>>>>>>>
>>>>>>>>>>>> The colorful analogy doesn't include considerations where
>>>>>>>>>>>> providing
>>>>>>>>>>>> bike lanes for Bob and doing nothing else is not entirely
>>>>>>>>>>>> harmless for
>>>>>>>>>>>> the pedestrians Alice is focused on.
>>>>>>>>>>>>
>>>>>>>>>>>> It's also incorrect in its suggestion that bike lanes are not
>>>>>>>>>>>> useful
>>>>>>>>>>>> for Alice. Nobody has said that P2900 isn't useful. That's why
>>>>>>>>>>>> it's
>>>>>>>>>>>> included
>>>>>>>>>>>> in *every* *single* *one* of the currently active proposals
>>>>>>>>>>>> suggesting
>>>>>>>>>>>> course corrections.
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>> SG21 mailing list
>>>>>>>>>>>> SG21_at_[hidden]
>>>>>>>>>>>> Subscription:
>>>>>>>>>>>> https://lists.isocpp.org/mailman/listinfo.cgi/sg21
>>>>>>>>>>>> Link to this post:
>>>>>>>>>>>> http://lists.isocpp.org/sg21/2025/10/11436.php
>>>>>>>>>>>>
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> SG21 mailing list
>>>>>>>>>>> SG21_at_[hidden]
>>>>>>>>>>> Subscription: https://lists.isocpp.org/mailman/listinfo.cgi/sg21
>>>>>>>>>>>
>>>>>>>>>>> Link to this post:
>>>>>>>>>>> http://lists.isocpp.org/sg21/2025/10/11499.php
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>> SG21 mailing list
>>>>>>>>> SG21_at_[hidden]
>>>>>>>>> Subscription: https://lists.isocpp.org/mailman/listinfo.cgi/sg21
>>>>>>>>>
>>>>>>>> Link to this post: http://lists.isocpp.org/sg21/2025/10/11510.php
>>>>>>>>>
>>>>>>>>
On Mon, Oct 20, 2025 at 10:49 PM Ryan McDougall <mcdougall.ryan_at_[hidden]>
wrote:
> Not true.
>
> On Mon, Oct 20, 2025 at 1:49 PM JOSE DANIEL GARCIA SANCHEZ <
> josedaniel.garcia_at_[hidden]> wrote:
>
>> More UB than today.
>>
>> On Mon, Oct 20, 2025 at 10:46 PM Ryan McDougall <mcdougall.ryan_at_[hidden]>
>> wrote:
>>
>>> No such thing has been shown.
>>>
>>> On Mon, Oct 20, 2025 at 1:45 PM JOSE DANIEL GARCIA SANCHEZ <
>>> josedaniel.garcia_at_[hidden]> wrote:
>>>
>>>> No. Because it has been shown that current design makes C++ less safe.
>>>>
>>>> On Mon, Oct 20, 2025 at 10:43 PM Ryan McDougall <
>>>> mcdougall.ryan_at_[hidden]> wrote:
>>>>
>>>>> That's patently untrue -- trying to change direction now is actually
>>>>> wasting EWG time.
>>>>>
>>>>> If you only care about Language Safety you should be ignoring P2900.
>>>>>
>>>>> On Mon, Oct 20, 2025 at 1:28 PM JOSE DANIEL GARCIA SANCHEZ <
>>>>> josedaniel.garcia_at_[hidden]> wrote:
>>>>>
>>>>>> It is a matter of priorities.
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Mon, Oct 20, 2025 at 10:23 PM Ryan McDougall <
>>>>>> mcdougall.ryan_at_[hidden]> wrote:
>>>>>>
>>>>>>> It’s not an either or thing.
>>>>>>>
>>>>>>> That’s like saying “we haven’t decided if the goal of WG21 is object
>>>>>>> oriented programming or structured programming”.
>>>>>>>
>>>>>>> On Mon, Oct 20, 2025 at 1:21 PM JOSE DANIEL GARCIA SANCHEZ <
>>>>>>> josedaniel.garcia_at_[hidden]> wrote:
>>>>>>>
>>>>>>>> We have never (to the best of my knowledge) decided if the goal of
>>>>>>>> WG21 is functional safety or language safety.
>>>>>>>>
>>>>>>>> Let's keep in mind that there are external pressures to pursue
>>>>>>>> language safety.In particular (but not only) memory safety.
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, Oct 20, 2025 at 10:08 PM Ryan McDougall via SG21 <
>>>>>>>> sg21_at_[hidden]> wrote:
>>>>>>>>
>>>>>>>>> They are comparable because they both address the needs of
>>>>>>>>> Functional Safety as per p3578 <http://wg21.link/p3578>. SG23
>>>>>>>>> took a poll on whether they're better than macros see P3297
>>>>>>>>> <http://wg21.link/P3297>.
>>>>>>>>>
>>>>>>>>> I think it's not a leap of logic that EWG has strong consensus to
>>>>>>>>> pass P2900 precisely because they feel it's strictly better than macros.
>>>>>>>>>
>>>>>>>>> Cheers,
>>>>>>>>>
>>>>>>>>> On Mon, Oct 20, 2025 at 12:58 PM John Spicer <jhs_at_[hidden]> wrote:
>>>>>>>>>
>>>>>>>>>> We have never taken a poll of whether P2900 is better then macro
>>>>>>>>>> solutions.
>>>>>>>>>>
>>>>>>>>>> Could you explain why you think contracts and macro-based
>>>>>>>>>> solutions are comperable?
>>>>>>>>>>
>>>>>>>>>> John.
>>>>>>>>>>
>>>>>>>>>> On Oct 20, 2025, at 3:09 PM, Ryan McDougall <
>>>>>>>>>> mcdougall.ryan_at_[hidden]> wrote:
>>>>>>>>>>
>>>>>>>>>> I’m saying we have decades of experience with macro based
>>>>>>>>>> systems, which defines the floor of features/expectations. The consensus is
>>>>>>>>>> P2900 is better taken as a whole. There are things i think should be
>>>>>>>>>> different with p2900, but p2900 represents consensus. There has been no
>>>>>>>>>> evidence put forward that there is a more correct course. Based on those
>>>>>>>>>> decades of experience here are no outstanding questions that having a TS
>>>>>>>>>> would answer.
>>>>>>>>>>
>>>>>>>>>> If i am wrong, please list precise questions that a TS would
>>>>>>>>>> answer. “We don’t have enough experience” is a statement.
>>>>>>>>>>
>>>>>>>>>> Cheers,
>>>>>>>>>>
>>>>>>>>>> On Mon, Oct 20, 2025 at 11:54 AM John Spicer <jhs_at_[hidden]> wrote:
>>>>>>>>>>
>>>>>>>>>>> You keep saying things like we have “decades of experience with
>>>>>>>>>>> macro-based systems”.
>>>>>>>>>>>
>>>>>>>>>>> If contracts were remotely similar to macro-based systems, we
>>>>>>>>>>> would not be having this discussion.
>>>>>>>>>>>
>>>>>>>>>>> The problem is that contracts are *vastly* different.
>>>>>>>>>>>
>>>>>>>>>>> If you put P2900 and macro-based systems in the same set, that
>>>>>>>>>>> means you don’t understand one or the other.
>>>>>>>>>>>
>>>>>>>>>>> John.
>>>>>>>>>>>
>>>>>>>>>>> On Oct 20, 2025, at 2:22 PM, Ryan McDougall via SG21 <
>>>>>>>>>>> sg21_at_[hidden]> wrote:
>>>>>>>>>>>
>>>>>>>>>>> The "course corrections" do not actually suggest a future course
>>>>>>>>>>> (beyond asserting without evidence"we need more experience" and kicking the
>>>>>>>>>>> can down the road to a TS) -- we've had years for alternative proposals to
>>>>>>>>>>> be put forward, and none have surpassed P2900.
>>>>>>>>>>>
>>>>>>>>>>> We *do* have decades of experience with macro-based systems, we
>>>>>>>>>>> *do* have decades of experience building software at scale (see Software
>>>>>>>>>>> Engineering at Google <https://abseil.io/resources/swe-book>),
>>>>>>>>>>> and we *do* know who our users are (see P1995 and P3297) -- and while there
>>>>>>>>>>> are many variations on contracts, P2900 represents our best consensus
>>>>>>>>>>> interpretation of those decades of experience. Not all of these decisions
>>>>>>>>>>> were everyone's first choice, but P2900 is the consensus. There is no
>>>>>>>>>>> evidence that any other option would improve that.
>>>>>>>>>>>
>>>>>>>>>>> Multiple papers, like P2900 and P3578 <http://wg21.link/p3578> explain
>>>>>>>>>>> exactly who the feature is for, and how and why each of these design
>>>>>>>>>>> choices were made. There is no reason to believe the current course is
>>>>>>>>>>> incorrect, or that another course would be more correct.
>>>>>>>>>>>
>>>>>>>>>>> On Mon, Oct 20, 2025 at 4:58 AM Ville Voutilainen via SG21 <
>>>>>>>>>>> sg21_at_[hidden]> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> On Mon, 20 Oct 2025 at 14:34, Timur Doumler via SG15
>>>>>>>>>>>> <sg15_at_[hidden]> wrote:
>>>>>>>>>>>> > Given the above, it seems to me like opposing C++26 contract
>>>>>>>>>>>> assertions because you want that checks are always on / always enforced is
>>>>>>>>>>>> kinda like this:
>>>>>>>>>>>> >
>>>>>>>>>>>> > – Alice: "I want safer roads for pedestrians." (reasonable
>>>>>>>>>>>> and good request)
>>>>>>>>>>>> > – Bob: "Here's a proposal to fund bike lanes in the city."
>>>>>>>>>>>> (reasonable and good proposal roughly in the same area but with a different
>>>>>>>>>>>> goal)
>>>>>>>>>>>> > – Alice: "But bike lanes don't add more crosswalks or reduce
>>>>>>>>>>>> speed limits. So they don't make roads safer for pedestrians. Therefore, we
>>>>>>>>>>>> should not build bike lanes."
>>>>>>>>>>>> >
>>>>>>>>>>>> > Here, Alice is committing a logical fallacy. Just because
>>>>>>>>>>>> bike lanes are not useful for Alice, it doesn't mean that they're not
>>>>>>>>>>>> useful for Bob, and taking away bike lanes from Bob does nothing to give
>>>>>>>>>>>> Alice what she wants.
>>>>>>>>>>>>
>>>>>>>>>>>> The colorful analogy doesn't include considerations where
>>>>>>>>>>>> providing
>>>>>>>>>>>> bike lanes for Bob and doing nothing else is not entirely
>>>>>>>>>>>> harmless for
>>>>>>>>>>>> the pedestrians Alice is focused on.
>>>>>>>>>>>>
>>>>>>>>>>>> It's also incorrect in its suggestion that bike lanes are not
>>>>>>>>>>>> useful
>>>>>>>>>>>> for Alice. Nobody has said that P2900 isn't useful. That's why
>>>>>>>>>>>> it's
>>>>>>>>>>>> included
>>>>>>>>>>>> in *every* *single* *one* of the currently active proposals
>>>>>>>>>>>> suggesting
>>>>>>>>>>>> course corrections.
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>> SG21 mailing list
>>>>>>>>>>>> SG21_at_[hidden]
>>>>>>>>>>>> Subscription:
>>>>>>>>>>>> https://lists.isocpp.org/mailman/listinfo.cgi/sg21
>>>>>>>>>>>> Link to this post:
>>>>>>>>>>>> http://lists.isocpp.org/sg21/2025/10/11436.php
>>>>>>>>>>>>
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> SG21 mailing list
>>>>>>>>>>> SG21_at_[hidden]
>>>>>>>>>>> Subscription: https://lists.isocpp.org/mailman/listinfo.cgi/sg21
>>>>>>>>>>>
>>>>>>>>>>> Link to this post:
>>>>>>>>>>> http://lists.isocpp.org/sg21/2025/10/11499.php
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>> SG21 mailing list
>>>>>>>>> SG21_at_[hidden]
>>>>>>>>> Subscription: https://lists.isocpp.org/mailman/listinfo.cgi/sg21
>>>>>>>>>
>>>>>>>> Link to this post: http://lists.isocpp.org/sg21/2025/10/11510.php
>>>>>>>>>
>>>>>>>>
Received on 2025-10-20 20:51:40
