Warning: mysqli::__construct(): (HY000/1203): User howardkn already has more than 'max_user_connections' active connections in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\includes\artfuncs.php on line 21
Failed to connect to MySQL: (1203) User howardkn already has more than 'max_user_connections' active connections
Warning: mysqli::query(): Couldn't fetch mysqli in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\index.php on line 66
Article <86msktukdz.fsf@linuxsc.com>
Deutsch   English   Français   Italiano  
<86msktukdz.fsf@linuxsc.com>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!feeds.phibee-telecom.net!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Tim Rentsch <tr.17687@z991.linuxsc.com>
Newsgroups: comp.lang.c
Subject: Re: Top 10 most common hard skills listed on resumes...
Date: Sat, 31 Aug 2024 02:11:36 -0700
Organization: A noiseless patient Spider
Lines: 72
Message-ID: <86msktukdz.fsf@linuxsc.com>
References: <vab101$3er$1@reader1.panix.com> <vah4hr$2b9i8$5@dont-email.me> <vahngt$2dtm9$1@dont-email.me> <87r0abzcsj.fsf@bsb.me.uk> <vai1ec$2fns2$1@dont-email.me> <874j75zftu.fsf@bsb.me.uk> <valrj7$367a8$2@dont-email.me> <87mskwy9t1.fsf@bsb.me.uk> <vanq4h$3iieb$1@dont-email.me> <875xrkxlgo.fsf@bsb.me.uk> <vapitn$3u1ub$1@dont-email.me> <87o75bwlp8.fsf@bsb.me.uk> <vaps06$3vg8l$1@dont-email.me> <871q27weeh.fsf@bsb.me.uk> <20240829083200.195@kylheku.com> <87v7zjuyd8.fsf@bsb.me.uk> <20240829084851.962@kylheku.com> <87mskvuxe9.fsf@bsb.me.uk> <vaqefq$2arg$2@dont-email.me> <87h6b3uejz.fsf@bsb.me.uk> <87bk1buduc.fsf@bsb.me.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Injection-Date: Sat, 31 Aug 2024 11:11:39 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="3cdd2c972935d84ac5d0fafd9719092c";
	logging-data="1026164"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX18RiqPVvmPlhmQnd+Jfr4O8c7ZPJhZyWx4="
User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux)
Cancel-Lock: sha1:2ROmeIX4vdgi8bGuHVPrMIvqXUQ=
	sha1:ksxXjiuaLtDlLopxuB6YJ/j+MlQ=
Bytes: 5017

Ben Bacarisse <ben@bsb.me.uk> writes:

> Ben Bacarisse <ben@bsb.me.uk> writes:
>
>> James Kuyper <jameskuyper@alumni.caltech.edu> writes:
>>
>>> On 8/29/24 12:06, Ben Bacarisse wrote:
>>> ...
>>>
>>>> I can't see what it is you object to in what I wrote.  I don't
>>>> disagree with anything you are saying (the "correct result" being
>>>> to reject a program that has, syntactically, the wrong thing on
>>>> the left hand side).
>>>
>>> No - the only requirement is that a diagnostic be produced.  A
>>> fully conforming implementation of C is allowed to accept such
>>> code and then generate an executable;  if you choose to execute
>>> the executable, the behavior is undefined.
>>
>> Sorry, I used a term incorrectly.  To put it informally, you must
>> be told that "this is not C".  Not everything is C even if a C
>> compiler will accept FORTRAN code as an extension.
>
> Actually I don't think I did.  I said "reject" and a compiler that
> says "this is not C" and then generates a executable is rejecting
> the code as far as I am concerned.

I would like to express a personal reaction.

I think what you said about rejecting a program isn't exactly
wrong, but it is misleading, and also, I think, inadvisable.  A
good general principle is not to use words with private meanings
in a venue where there is a different public meaning as
understood by a significant majority of participants in the
venue.

The response from James Kuyper is off the mark in my view and so
enters the conversation at cross purposes.  The quotes around the
phrase "correct result" should be enough to make clear that you
are not making a precise statement about what the C standard
requires, but instead giving an informal description of a reaction
to a well-defined condition.  James is dragging the conversation
into a domain that is not quite the same as the one of your
comment.

That said, I still think "reject" is a poor word choice there,
whatever you might think of it privately, for two reasons.
Reason one, it goes against the common ordinary meaning of the
word.  Reason two, although the C standard does not use the word
"reject" at all, it does use the word "accept", and it is natural
to take "reject" to mean the opposite of "accept", but that sense
of "reject" is not what you mean (at least, I don't think it is).

Incidentally, the C standard doesn't say anything about refusing
an entire program.  What it does say is that implementations must
not successfully translate a preprocessing translation unit that
has an unskipped #error directive.  Presumably a not-successfully
translated preprocessing translation unit is meant to imply that
any program that tries to incorporate that translation unit must
also be invalid, but I don't think the C standard ever actually
says that.  (Disclaimer:  I haven't checked this claim carefully.)

On the question of what phrase to use instead, I might suggest
"must flag the program as being erroneous (in the sense that it
does not comply with the rules given in the C standard for what
constitutes a C source file)".  That's a long phrase, but I think
the first part - "must flag the program as being erroneous" -
expresses what it is you want to convey.  And I think it would be
understood by C-standard-experts in a way that's compatible with
what you want to say.

So, for what it's worth, there are my thoughts.