| Deutsch English Français Italiano |
|
<vipbsh$qllb$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!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: Wed, 4 Dec 2024 11:45:36 +0100 Organization: A noiseless patient Spider Lines: 51 Message-ID: <vipbsh$qllb$1@dont-email.me> References: <vi54e9$3ie0o$1@dont-email.me> <vicque$15ium$2@dont-email.me> <vid110$16hte$1@dont-email.me> <87mshhsrr0.fsf@nosuchdomain.example.com> <vidd2a$18k9j$1@dont-email.me> <8734j9sj0f.fsf@nosuchdomain.example.com> <vidnuj$1aned$1@dont-email.me> <87ttbpqzm1.fsf@nosuchdomain.example.com> <vie0j5$1g968$1@dont-email.me> <vieun5$1mcnr$3@dont-email.me> <vihamj$2cflq$1@dont-email.me> <vihili$2f79m$1@dont-email.me> <vihu63$2ipg0$1@dont-email.me> <vii3kq$2kmc8$1@dont-email.me> <vikqvf$3fhce$1@dont-email.me> <jNm3P.7909$XuU6.3431@fx40.iad> <vinkbv$8r4i$1@dont-email.me> <vinm3p$9auh$1@dont-email.me> <vinqt2$bede$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Injection-Date: Wed, 04 Dec 2024 11:45:38 +0100 (CET) Injection-Info: dont-email.me; posting-host="710b50e4e72628794832f3555de01104"; logging-data="874155"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/OeTFDxbkkPnkKXtnyWEbx" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 Cancel-Lock: sha1:EbArPuu0A1PjHO2bgetZQIma9f0= In-Reply-To: <vinqt2$bede$1@dont-email.me> X-Enigmail-Draft-Status: N1110 Bytes: 3826 On 03.12.2024 21:49, BGB wrote: > On 12/3/2024 1:27 PM, Janis Papanagnou wrote: >> On 03.12.2024 19:57, BGB wrote: >>> On 12/2/2024 12:13 PM, Scott Lurndal wrote: >>>> >>>> Indeed. One wonders at Bart's familiarity with formal grammars. >>> >>> In my case, personally I haven't encountered much that doesn't work well >>> enough with a recursive-descent parser. >> >> Is that meant as a contradiction? - If so, how? > > Formal grammars and parser generators aren't usually necessary IME, > since recursive descent can deal with most everything (and is generally > more flexible than what one can deal with in a formal grammar). Hmm, okay. We obviously widely disagree here. IMO a language needs a consistent grammar that one can look up to understand the syntactic structure of a language as a clean basis for its semantics. (I don't usually want to read [language implementation-]code (if available in the first place) to understand the languages' syntactical structure.) Language and grammar belongs together. Implementing a compiler or an interpreter for a language where no grammar was (or can be?) defined sounds absolutely odd to me. Of course you don't "need" a grammar to _implement_ a language tool, but it serves (and not only) to build a coherent language. Once you have a grammar for your language you can then make use of tools and formal rules to create a reliable outcome. (There's a small textbook from N. Wirth where he explains compiler construction (or rather, a specific, simple form of it) based on an LL(1) grammar and implemented that by a Recursive Descent parser. - Emphasis on the _grammar_ as base of the design and development! - I pointed to this example because - I think for simplicity - it also decided to implement the language using a Recursive Descent parser. Usually more powerful grammars and parsers are used; LR, LALR, ...) > > Though, it seems I didn't read enough, they were debating about > syntactic use of semicolons as a separator rather than parser writing... Right. (Semicolons are a very basic element of a language and its "formal grammar" that Scott was referring to.) Janis > [...]