C++ Logo

sg15

Advanced search

Re: [isocpp-sg15] [isocpp-sg21] P3835 -- Different contract checking for different libraries

From: Ville Voutilainen <ville.voutilainen_at_[hidden]>
Date: Mon, 20 Oct 2025 14:58:42 +0300
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.

Received on 2025-10-20 11:58:56