C++ Logo

liaison

Advanced search

Re: [wg14/wg21 liaison] #once proposal

From: Ville Voutilainen <ville.voutilainen_at_[hidden]>
Date: Thu, 3 Feb 2022 23:30:53 +0200
On Thu, 3 Feb 2022 at 23:10, Miguel Ojeda
<miguel.ojeda.sandonis_at_[hidden]> wrote:
> > So, nothing, I'm merely telling you that you have failed to prove your
> > bold claim.
> > Your subsequent bold claim that it's 'reality' instead of a bold claim
> > also remains unsubstantiated.
>
> I did prove `#pragma once` is widely used everywhere (= all kinds of
> domains / companies / entities).

That's another bold but incorrect claim. You didn't prove what you
claimed to prove, you found
anecdotal samples, with selection bias, that support your earlier
claim. That doesn't mean those samples
prove your claim.

> In fact, given the Reddit C++ post, one could even think it is the
> _most_ widely used form in C++ (vs. the guard: 2.3k vs 1.2k), for
> whatever that poll is worth.

..because all programmers would respond to a reddit poll? The vast
majority of programmers most likely
don't have accounts on reddit. One can think a whole host of things,
but some of us prefer having
actual evidence before we are convinced of statistical claims such as
what you wrote above.

> > Those projects already have the form they are already using. There's
> > no need for a standards
> > committee to take an action to give them what they already have,
> > especially when what's being proposed
> > gives them something else, including a different spelling.
>
> I bet some users would complain to us that we standardized `#once ID`
> but not what they used. One way or the other, we can't win.

Well, our bailiwick is not "winning", but we certainly can succeed by
spending our limited time on useful
things. Spending it on standardizing yet another, but worse, spelling
of #pragma once is not one of those things.
It's worse because while it's a pragma, an implementation can clearly
signal its users "I can't provide a meaningful
implementation of such a facility, therefore I do not implement the
pragma". The proposed #once does not allow
for that.

Received on 2022-02-03 21:31:05