Path: csiph.com!eternal-september.org!feeder.eternal-september.org!reader01.eternal-september.org!.POSTED!not-for-mail
From: Tim Rentsch
Newsgroups: comp.lang.c
Subject: Re: How to understand official C document- ISO/IEC 9899:201x
Date: Sat, 20 Jun 2020 05:13:06 -0700
Organization: A noiseless patient Spider
Lines: 30
Message-ID: <86h7v6j5pp.fsf@linuxsc.com>
References:
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Injection-Info: reader02.eternal-september.org; posting-host="ab6d988cfe98a0b7e72bfce61df9096f"; logging-data="22966"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+p0gzN3z0qg1iOlVeM0kS9qUfBsiz3O3Q="
User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux)
Cancel-Lock: sha1:LaomzAIESe40DBNPaZKegs9YmFI= sha1:caq3zhxuhwcXJRPvfkRU08L3jb8=
Xref: csiph.com comp.lang.c:152849
Vir Campestris writes:
> On 03/06/2020 21:24, Avicenna wrote:
>
>> Yes! It is very clear now. The problem is there is a 'space' in
>> "identifier identifier-nondigit".
>> Probably everyone could just understand it is simple
>> concatenations to form the parts.
>>
>> I think I'll follow along this example to see if I could
>> understand the other parts of C syntax.
>
> Be aware however that the specifications are written to be
> precise.
Certainly the expectation is that the syntax rules in the ISO
Standard accurately describe all possibly legal C programs
(including some that may be rejected for non-syntax reasons such
as constraint violations, et cetera).
> They are definitely not written to be comprehensible.
I believe the syntax rules for C were in fact written so that
they would be comprehensible, including the earlier formulation
in "The C Programming Language" by Kernighan and Ritchie.
Furthermore the authors have in my view done a pretty good job of
doing that. I find the grammar given in the ISO C standard to be
decidedly easier to understand than the grammars of lots of other
languages I've looked at.