Deutsch   English   Français   Italiano  
<vj7dup$he7i$1@dont-email.me>

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

Path: ...!weretis.net!feeder9.news.weretis.net!news.quux.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Janis Papanagnou <janis_papanagnou+ng@hotmail.com>
Newsgroups: comp.lang.c
Subject: Re: question about linker
Date: Mon, 9 Dec 2024 19:46:48 +0100
Organization: A noiseless patient Spider
Lines: 259
Message-ID: <vj7dup$he7i$1@dont-email.me>
References: <vi54e9$3ie0o$1@dont-email.me>
 <87plmfu2ub.fsf@nosuchdomain.example.com> <vi9jk4$gse4$1@dont-email.me>
 <vi9kng$gn4c$1@dont-email.me> <87frnbt9jn.fsf@nosuchdomain.example.com>
 <viaqh0$nm7q$1@dont-email.me> <877c8nt255.fsf@nosuchdomain.example.com>
 <viasv4$nm7q$2@dont-email.me> <vibr1l$vvjf$1@dont-email.me>
 <vic73f$1205f$1@dont-email.me> <20241129142810.00007920@yahoo.com>
 <vicfra$13nl4$1@dont-email.me> <20241129161517.000010b8@yahoo.com>
 <vicque$15ium$2@dont-email.me> <vid110$16hte$1@dont-email.me>
 <vifcll$1q9rj$1@dont-email.me> <vifiib$1s07p$1@dont-email.me>
 <87ldwx10gv.fsf@bsb.me.uk> <vimtt4$27vv$1@dont-email.me>
 <86ser1kgp5.fsf@linuxsc.com> <vit69t$1qfgg$1@dont-email.me>
 <87ldwtzlc0.fsf@nosuchdomain.example.com> <vitjgg$1tukq$2@dont-email.me>
 <vj1bss$325uo$1@dont-email.me> <vj1h4i$335q1$2@dont-email.me>
 <vj1mhi$34p7h$1@dont-email.me> <vj1prj$35je4$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Injection-Date: Mon, 09 Dec 2024 19:46:50 +0100 (CET)
Injection-Info: dont-email.me; posting-host="1831f7430e8998035619d33d7ee64315";
	logging-data="571634"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX19PQZpqPlyCY4/RaOyKW1T7"
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101
 Thunderbird/45.8.0
Cancel-Lock: sha1:Yq4MbaL7GQ3O1XRPjv1BIC2T6uI=
In-Reply-To: <vj1prj$35je4$1@dont-email.me>
X-Enigmail-Draft-Status: N1110
Bytes: 10290

On 07.12.2024 16:33, Bart wrote:
> On 07/12/2024 14:36, Janis Papanagnou wrote:
>> On 07.12.2024 14:04, Bart wrote:
> 
>>
>> Just fine, I'd say.
>>
>>> But it relies on some subtlety.
>>
>> You seem to see ghosts. There's no subtlety; all is clearly defined,
>> and it's a sensible feature, and consistently implemented.
>>
>>> 'while (cond)' both starts a statement, and can
>>> end a statement:
>>>
>>>     do while(cond) do ; while (cond);
>>
>> What is this (IMO syntactical wrong "C" code) supposed to do or to
>> explain?
> 
> See my follow-up.

See mine.

> 
>> Your (wrong) second 'do' was indeed confusing! - Why did you provide
>> a wrong sample to confirm your wrong ideas? - Or is it just your well
>> known habit to try to confuse other folks as well my making up stupid
>> things?
> 
> You're being aggressive.

Am I?

> It was a mistake, that's all. My original
> example was meant to show how it gets confusing, but when I transcribed
> it into an actual program, it seemed to work because I'd left out that
> 'do'.

The fact I'm describing here is that you are repeatedly making up
things, construct unrealistic lunatic samples, and argument based
on them. There is little difference in whether you made a mistake
in your sample or not. In other words; you are often the source of
your confusion, homemade as we say. If you'd have formatted your
sample in a sensible way (as certainly all other people here would
have done) you'd instantly have seen your mistake and that the "C"
syntax structure isn't any problem at all.

> 
> It says something however when I actually believed that that code was
> valid, because the compiler appeared to say so.

Huh?

> 
>> Most here (and me too) already acknowledged that "C" is not obvious
>> to you.
> 
> Why is it not possible for to acknowledge that some language design
> patterns may not be as obvious as others?

"for" what? - You mean, for me, for the audience here?

Why do you make things up again; of course in most languages some
language patterns are more obvious than others. (Please leave your
fantasy world and drop your pipe dreams if you want to seriously
discuss things here.)

> 
> According to you, even if some construct can be determined to be
> unambiguous in some convoluted grammar, then it must also be 100%
> obvious to any human reader?

Who said that? - Again you make up things just for your argument.

An unambiguous grammar is something quite essential; how would you
parse code if it were ambiguous?

To what ([hypothetical] "some") grammar are you referring to?

If you mean the "C" grammar; what, concretely, you find to be
"convoluted"?

You postulate it as if the grammar were convoluted; more likely
it's just your personal problem with understanding formal syntax.

No one said, that everything is "100% obvious". An unambiguous
grammar is a precondition for for an understanding, though.

If you'd have your excerpts and samples formatted in a common
(non-lunatic) way then it should have been "100% obvious" even
to you.

> 
> Is it just to avoid admitting that I might have a point?

(Yet you haven't had one.)

> 
> 
>>> You don't think there is an element of ambiguity here?
>>
>> There isn't any.
> 
> So you're a parser and you see this:
> 
>     do ... while
> 
> How do you know whether that 'while' starts a new nested loop or
> terminates this one?

Because there's the '...' in between that answers that question.

> 
> What does it depend on; what property of blocks in the language is
> needed to make it work? What property of statement separators or
> terminators is needed.
> 
> In C, it apparently relies on blocks (that is, the statements in a loop
> body) being only a single statement, as it is in C. So the pattern is this:
> 
>   do {...} while ...
>   do stmt; while ...
>   do ; while ...
> 
> But not however these:
> 
>   do {...}; while ...
>   do while ...            # this can't be the terminating while.

So you've got it?

> 
> So it can't work in a syntax which allows N statements in a block:
> 
>   do s1; s2; s3; while ...
> 
> Since it can't tell whether that while is the terminator, or is another
> nested loop.

All that could be read from the various posts you've got or inferred
if you'd have spent a minimum of interest (instead of lashing out
with inappropriate examples, and your personal peculiarities).

> Now, you could have given a more measured, respectful reply and pointed
> these things out, instead of being condescending and patronising.

You've got all the facts and explanations (including samples) from
several sides (mine included) here.

(My patience, if constantly stressed, is of course limited.)

> 
> You might also have pointed out

I see that many folks here (me included) were and are trying to
explain things to you that you say would confuse you. - If from
the manifold replies you cannot see the substance, that's still
no justification to demand any specific sort of answer. How do
you think we know which formulation or detail might enlighten
you, especially given that you are constantly reluctant or even
unwilling to understand the presented answers.

> that C could have deprecated null
> statements consisting of a single ";",
========== REMAINDER OF ARTICLE TRUNCATED ==========