Deutsch English Français Italiano |
<861q1ibfrx.fsf@linuxsc.com> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!weretis.net!feeder8.news.weretis.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: Tue, 17 Sep 2024 05:56:02 -0700 Organization: A noiseless patient Spider Lines: 59 Message-ID: <861q1ibfrx.fsf@linuxsc.com> References: <vab101$3er$1@reader1.panix.com> <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> <vaq9tu$1te8$1@dont-email.me> <875xrivrg0.fsf@bsb.me.uk> <20240829191404.887@kylheku.com> <86cylqw2f8.fsf@linuxsc.com> <871q2568vl.fsf@nosuchdomain.example.com> <vavmbk$13k4n$1@dont-email.me> <87cylo494u.fsf@nosuchdomain.example.com> <vb09gd$16mr5$1@dont-email.me> <20240831195350.785@kylheku.com> <86mskrrvco.fsf@linuxsc.com> <vbj9qb$1qi2h$1@dont-email.me> <vbkbc1$1u33o$1@dont-email.me> <vbkcqi$1v2vr$1@dont-email.me> <20240909100944.715@kylheku.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Injection-Date: Tue, 17 Sep 2024 14:56:03 +0200 (CEST) Injection-Info: dont-email.me; posting-host="5475264e673852879913d2eef8867355"; logging-data="3696824"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+SPIoRLpLfYOW1SkdLbdcO+I9duwsVTI8=" User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux) Cancel-Lock: sha1:4YQMWQJoV/0HtFZLmoWK4lyFewM= sha1:BiV5MmcCKx34EcY77bECofHPBcQ= Bytes: 4067 Kaz Kylheku <643-408-1753@kylheku.com> writes: > On 2024-09-08, Janis Papanagnou <janis_papanagnou+ng@hotmail.com> wrote: > >> On 08.09.2024 16:12, James Kuyper wrote: >> >>> On 9/8/24 00:39, Janis Papanagnou wrote: >>> ... >>> >>>> That's why I immediately see the necessity that compiler creators >>>> need to know them in detail to _implement_ "C". And that's why I >>>> cannot see how the statement of the C-standard's "most important >>>> purpose" would >>> >>> sound reasonable (to me). ... >>> >>> I agree - the most important purpose is for implementors, not >>> developers. >>> >>>> ... I mean, what will a programmer get from the "C" standard that >>>> a well written text book doesn't provide? >>> >>> What the C standard says is more precise and more complete than >>> what most textbooks say. >> >> Exactly. And this precision is what makes standard often difficult >> to read (for programming purposes for "ordinary" folks). > > The C grammar is not presented in a nice way in ISO C. > > It uses nonsensical categories. For instance a basic expression > like A is considered a unary-expression. A newcomer looking at the > grammar for assignment will be wondering how on Earth the A in A = B > is a unary expression, when it contains no unary operator. > > The unary-expression is not given in the immediately preceding > section, and no section references are given; you have to go > searching through the document to find it. > > I also suspect programmers not versed in parsing and grammars will > not intuit that assignment associates right to left. Someone who > remembers their compiler course from university will know that the > right hand side > > "unary-expression assignment-operator assignment-expression" > > has the assignment-expression on the right, and is therefore > identified as right-recursive, and that leads to right association. > > I strongly suspect that the vast majority of the C coders on the > planet (as well as users of other languages that have operator > grammars) refer to operator precedence tables that fit on one > page, rather than flipping around in a telescopic grammar that > goes on for pages. This critique is off base. The C standard is a reference, not a tutorial. If Kaz thinks the grammar given in the C standard is not up to the task *for the document it is part of*, he should post a proposed replacement.