Path: csiph.com!eternal-september.org!feeder.eternal-september.org!nntp.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: Keith Thompson Newsgroups: comp.lang.c Subject: Re: _BitInt(N) Date: Fri, 28 Nov 2025 15:23:23 -0800 Organization: None to speak of Lines: 35 Message-ID: <875xatbv2s.fsf@example.invalid> References: <10dajlh$ko3c$1@dont-email.me> <10g2f2d$2oufq$1@dont-email.me> <10g2m3v$2s5sa$1@dont-email.me> <10g53au$3onvh$1@dont-email.me> <10g58pa$3r273$1@dont-email.me> <10g6bpp$60nh$1@dont-email.me> <10g6qek$bfrp$1@dont-email.me> <10g742m$ev96$2@dont-email.me> <10g779l$h980$1@dont-email.me> <10g7aci$icq7$1@dont-email.me> <10g7hm2$lpsu$1@dont-email.me> <10g7oqf$ojir$1@dont-email.me> <10g7ue4$r47b$1@dont-email.me> <10g9a0r$1a895$1@dont-email.me> <10g9fmh$1crf0$1@dont-email.me> <10g9i5e$1dpa3$1@dont-email.me> <10ga0sd$1jb9e$1@dont-email.me> <10ga3hn$1kv34$1@dont-email.me> <10gb1md$203ao$2@dont-email.me> <10gc28l$2c8jt$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain Injection-Date: Fri, 28 Nov 2025 23:23:24 +0000 (UTC) Injection-Info: dont-email.me; posting-host="9ea16e30e5b17edc262b0552d84c9a75"; logging-data="3027920"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18Oesq0xfuCPIfAohoYyrOU" User-Agent: Gnus/5.13 (Gnus v5.13) Cancel-Lock: sha1:HtSm65rMQBABu4HkT7HHs8E2kao= sha1:ukc35uo+x/OJGEtC7BuBpKQrHd8= Xref: csiph.com comp.lang.c:395558 bart writes: > On 28/11/2025 02:33, Janis Papanagnou wrote: [...] >> You can of course add as many commodity features to "your language" >> as you like. I seem to recall that one of the design principles of >> "C" was to not add too many keywords. (Not sure whether 'A.odd' is >> a function or keyword above [in "your language"].) > > It is a reserved word, which means it can't be used as either a > top-level user identifier, or a member name. With extra effort, it > could be used for both, but that needs some special syntax, such as > Ada-style "A'odd"; I've never got around to it. > > In Pascal (where I copied it from) it is a reserved word. In Pascal, "odd" is not a reserved word. It's the name of a predefined function. [...] >> PS: BTW, I was always wondering why Pascal and Algol 68 supported >> 'odd' but not 'even'! - In the documents of the Genie compiler we >> can read: "This is a relic of times long past.", but beyond that >> it doesn't explain why it's a "relic". I can only guess that it's, >> as a special case, considered just unnecessary in the presence of >> the modulus operator. > > Maybe because you can trivially define 'even' as 'not odd'. Or maybe because odd(n) can be implemented as "treat the low-order bit of the argument as a Boolean". -- Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com void Void(void) { Void(); } /* The recursive call of the void */