Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

One Bell System - it used to work before they installed the Dimension!


devel / comp.lang.c / Re: iso646.h

SubjectAuthor
* iso646.hLawrence D'Oliveiro
+- Re: iso646.hLew Pitcher
+* Re: iso646.hJames Kuyper
|`- Re: iso646.hLawrence D'Oliveiro
`* Re: iso646.hDavid Brown
 +* Re: iso646.hScott Lurndal
 |`* Re: iso646.hLawrence D'Oliveiro
 | `* Re: iso646.hKeith Thompson
 |  `* Re: iso646.hLawrence D'Oliveiro
 |   `* Re: iso646.hKeith Thompson
 |    `* Re: iso646.hLawrence D'Oliveiro
 |     `- Re: iso646.hKaz Kylheku
 `* Re: iso646.hLawrence D'Oliveiro
  +- Re: iso646.hKaz Kylheku
  +* Re: iso646.hBlue-Maned_Hawk
  |`* Re: iso646.hLawrence D'Oliveiro
  | +- Re: iso646.hKaz Kylheku
  | `* Re: iso646.hJanis Papanagnou
  |  `* Re: iso646.hLawrence D'Oliveiro
  |   +- Re: iso646.hJanis Papanagnou
  |   `- Re: iso646.hKaz Kylheku
  +- Re: iso646.hTim Rentsch
  +* Re: iso646.hJanis Papanagnou
  |`* Re: iso646.hLawrence D'Oliveiro
  | `- Re: iso646.hJanis Papanagnou
  +* Re: iso646.hDavid Brown
  |`* Re: iso646.hKaz Kylheku
  | +- Re: iso646.hbart
  | +* Re: iso646.hJanis Papanagnou
  | |+* Re: iso646.hKeith Thompson
  | ||`* Re: iso646.hLawrence D'Oliveiro
  | || +* Re: iso646.hKeith Thompson
  | || |`* Re: iso646.hDavid Brown
  | || | `- Re: iso646.hJanis Papanagnou
  | || +* Re: iso646.hLew Pitcher
  | || |`* Re: iso646.hLawrence D'Oliveiro
  | || | +- Re: iso646.hLew Pitcher
  | || | +* Re: iso646.hKaz Kylheku
  | || | |`- Re: iso646.hChris M. Thomasson
  | || | `- Re: iso646.hScott Lurndal
  | || `- Re: iso646.hKaz Kylheku
  | |`* Re: iso646.hKaz Kylheku
  | | +- Re: iso646.hJanis Papanagnou
  | | `* Re: iso646.hJanis Papanagnou
  | |  `- Re: iso646.hKaz Kylheku
  | `- Re: iso646.hDavid Brown
  +- Re: iso646.hbart
  `* Re: iso646.hMalcolm McLean
   +* Re: iso646.hLew Pitcher
   |+- Re: iso646.hKaz Kylheku
   |+* Re: iso646.hLawrence D'Oliveiro
   ||+* Re: iso646.hKeith Thompson
   |||`* Re: iso646.hLawrence D'Oliveiro
   ||| +* Re: iso646.hKeith Thompson
   ||| |+- Re: iso646.hLawrence D'Oliveiro
   ||| |`- Re: iso646.hMalcolm McLean
   ||| `- Re: iso646.hJanis Papanagnou
   ||`- Re: iso646.hJanis Papanagnou
   |`* C/CPP macro conventions (was Re: iso646.h)Janis Papanagnou
   | `* Re: C/CPP macro conventions (was Re: iso646.h)Kaz Kylheku
   |  +- Re: C/CPP macro conventions (was Re: iso646.h)Janis Papanagnou
   |  +- Re: C/CPP macro conventions (was Re: iso646.h)David Brown
   |  `- Re: C/CPP macro conventions (was Re: iso646.h)Blue-Maned_Hawk
   +* Re: iso646.hbart
   |+* Re: iso646.hScott Lurndal
   ||`* Re: iso646.hJames Kuyper
   || +* Re: iso646.hKalevi Kolttonen
   || |+* Re: iso646.hLawrence D'Oliveiro
   || ||`* Re: iso646.hKaz Kylheku
   || || +* Re: iso646.hKalevi Kolttonen
   || || |`* Re: iso646.hJanis Papanagnou
   || || | `* Re: iso646.hJames Kuyper
   || || |  +* Re: iso646.hJanis Papanagnou
   || || |  |+- Re: iso646.hJanis Papanagnou
   || || |  |+* Re: iso646.hKalevi Kolttonen
   || || |  ||`* Re: iso646.hKalevi Kolttonen
   || || |  || `* Re: iso646.hLawrence D'Oliveiro
   || || |  ||  `- Re: iso646.hDavid Brown
   || || |  |`* Re: iso646.hKeith Thompson
   || || |  | `- Re: iso646.hKalevi Kolttonen
   || || |  +- Re: iso646.hLawrence D'Oliveiro
   || || |  `* Re: iso646.hKaz Kylheku
   || || |   `* Re: iso646.hJames Kuyper
   || || |    +* Re: iso646.hDavid Brown
   || || |    |+* Re: iso646.hJanis Papanagnou
   || || |    ||`* Re: iso646.hDavid Brown
   || || |    || `- Re: iso646.hJanis Papanagnou
   || || |    |`* Re: iso646.hbart
   || || |    | `- Re: iso646.hDavid Brown
   || || |    `- Re: iso646.hTim Rentsch
   || || `- Re: iso646.hJanis Papanagnou
   || |`- Unix shell conditionals (was Re: iso646.h)Janis Papanagnou
   || `* Re: iso646.hScott Lurndal
   ||  +* Re: iso646.hKaz Kylheku
   ||  |`* Re: iso646.hbart
   ||  | `- Re: iso646.hKaz Kylheku
   ||  +- Re: iso646.hKeith Thompson
   ||  `* Re: iso646.hJames Kuyper
   ||   `- Re: iso646.hJanis Papanagnou
   |+* Python (Re: iso646.h)Kalevi Kolttonen
   ||+* Re: Python (Re: iso646.h)bart
   ||+* Re: Python (Re: iso646.h)Keith Thompson
   ||+* Re: Python (Re: iso646.h)Lawrence D'Oliveiro
   ||`- Re: Python (Re: iso646.h)Dan Cross
   |+* Re: iso646.hKeith Thompson
   |`* Re: iso646.hMalcolm McLean
   `* Re: iso646.hLawrence D'Oliveiro

Pages:1234567891011121314151617181920212223242526
Re: iso646.h

<878r4facny.fsf@nosuchdomain.example.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31481&group=comp.lang.c#31481

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!rocksolid2!news.neodome.net!weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Keith.S....@gmail.com (Keith Thompson)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 14:49:05 -0800
Organization: None to speak of
Lines: 30
Message-ID: <878r4facny.fsf@nosuchdomain.example.com>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <GVTrN.46982$U1cc.26176@fx04.iad>
<uop3ml$1d8ao$2@dont-email.me> <XbWrN.302617$xHn7.29225@fx14.iad>
MIME-Version: 1.0
Content-Type: text/plain
Injection-Info: dont-email.me; posting-host="26e4c0dfaad44fa440c0363db91416b9";
logging-data="1558377"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19mADizsuYbOQkc63BJR5M9"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)
Cancel-Lock: sha1:IHra1s3fYb6qarNP8JEMR9DLneU=
sha1:lTHaTOhUCui+lXie2YPy0gF5BC0=
 by: Keith Thompson - Tue, 23 Jan 2024 22:49 UTC

scott@slp53.sl.home (Scott Lurndal) writes:
[...]
> An issue with the use of the iso646 'and' macro is that the
> typical reader, unfamiliar with iso646, might assume a bitwise
> and rather than a 'logical' or 'conditional' and.

It uses "bitand" for "&", "and" for "&&". (Reasonable, IMHO, because
"&&" is more common. One might argue that when C split B's "&" operator
into bitwise and logical versions, it would have made sense to use "&"
for logical and "&&" for bitwise -- but that ship sailed *long* ago.)

Here are the symbols defined in <iso646.h> on my system; it should be
the same in any implementation.

#define and &&
#define and_eq &=
#define bitand &
#define bitor |
#define compl ~
#define not !
#define not_eq !=
#define or ||
#define or_eq |=
#define xor ^
#define xor_eq ^=

--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
Working, but not speaking, for Medtronic
void Void(void) { Void(); } /* The recursive call of the void */

Re: iso646.h

<874jf3acjb.fsf@nosuchdomain.example.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31482&group=comp.lang.c#31482

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Keith.S....@gmail.com (Keith Thompson)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 14:51:52 -0800
Organization: None to speak of
Lines: 14
Message-ID: <874jf3acjb.fsf@nosuchdomain.example.com>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uoosj4$1aidf$1@dont-email.me> <uopcdv$1f17i$5@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain
Injection-Info: dont-email.me; posting-host="26e4c0dfaad44fa440c0363db91416b9";
logging-data="1558377"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19iIJXaLdKBr9pzsE7mS9Ds"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)
Cancel-Lock: sha1:QPTQOXBD9MvHaNo23zLYSJx/GvM=
sha1:ppRLIfYjTtrGuv4fCS/Xd4ElFNw=
 by: Keith Thompson - Tue, 23 Jan 2024 22:51 UTC

Lawrence D'Oliveiro <ldo@nz.invalid> writes:
> On Tue, 23 Jan 2024 17:21:40 -0000 (UTC), Lew Pitcher wrote:
>> Less importantly, it also violates the convention that C macros are
>> named in upper case to distinguish them from keywords and "regular"
>> identifiers.
>
> Why does C allow lowercase in macro names, then?

Because it's a convention, not a language rule.

--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
Working, but not speaking, for Medtronic
void Void(void) { Void(); } /* The recursive call of the void */

Re: iso646.h

<uopg38$1fl05$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31483&group=comp.lang.c#31483

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: kal...@kolttonen.fi (Kalevi Kolttonen)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 22:54:33 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 20
Sender: <untosten@0.0.0.0>
Message-ID: <uopg38$1fl05$1@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me> <uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me> <uop0r1$1d4d4$1@dont-email.me> <87cytrajvc.fsf@nosuchdomain.example.com> <uopcv5$1f17i$9@dont-email.me>
Injection-Date: Tue, 23 Jan 2024 22:54:33 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="28d10614f3f0debe35477cf82de5fa28";
logging-data="1561605"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1++gyT3Od6eIxWLxMxAmrww5B98XkgJL8o="
User-Agent: tin/2.6.2-20221225 ("Pittyvaich") (Linux/6.6.11-200.fc39.x86_64 (x86_64))
Cancel-Lock: sha1:Mlcv+HNLOd0lczRKBftYt/5ZBeM=
 by: Kalevi Kolttonen - Tue, 23 Jan 2024 22:54 UTC

Lawrence D'Oliveiro <ldo@nz.invalid> wrote:
> On Tue, 23 Jan 2024 12:13:27 -0800, Keith Thompson wrote:
>
>> There's no hard rule that operators must be
>> punctuation, just a general trend.
>
> And iso646.h demonstrates that that trend is at an end.

In the real world, iso646.h is almost never used. I
do not claim to be any kind of programming expert but
I have read a considerable amount of C code of various
projects. I have personally witnessed that everybody
always uses "&&" and "||".

You can probably download thousands of C codebases
from github and you will find out that reality is
like that.

br,
KK

Re: iso646.h

<87zfwv8x3n.fsf@nosuchdomain.example.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31486&group=comp.lang.c#31486

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Keith.S....@gmail.com (Keith Thompson)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 15:10:36 -0800
Organization: None to speak of
Lines: 19
Message-ID: <87zfwv8x3n.fsf@nosuchdomain.example.com>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me>
<87cytrajvc.fsf@nosuchdomain.example.com>
<uopcv5$1f17i$9@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain
Injection-Info: dont-email.me; posting-host="1a14796772ccb3100f0d224a23edc517";
logging-data="1567151"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19R3UPQ4ne/vmuNYIBz9kYC"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)
Cancel-Lock: sha1:jYH+O2HkBz3IyvxviL/1oYeDklA=
sha1:nNiQRgyYxmiNl0X06IaxVQX1HOw=
 by: Keith Thompson - Tue, 23 Jan 2024 23:10 UTC

Lawrence D'Oliveiro <ldo@nz.invalid> writes:
> On Tue, 23 Jan 2024 12:13:27 -0800, Keith Thompson wrote:
>> There's no hard rule that operators must be
>> punctuation, just a general trend.
>
> And iso646.h demonstrates that that trend is at an end.

It does no such thing. Macro names are identifiers, and <iso646.h> only
defined macro names. Since <iso646.h> is rarely used, its existence
doesn't demonstrate any kind of trend.

The header was introduced to make it easier (or possible) to write C
code on systems/keyboards that don't support certain characters like '&'
and '|' -- similar to digraphs and trigraphs.

--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
Working, but not speaking, for Medtronic
void Void(void) { Void(); } /* The recursive call of the void */

Re: iso646.h

<uopics$1fs5l$3@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31488&group=comp.lang.c#31488

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo...@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 23:33:48 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 16
Message-ID: <uopics$1fs5l$3@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uoosj4$1aidf$1@dont-email.me> <uopcdv$1f17i$5@dont-email.me>
<874jf3acjb.fsf@nosuchdomain.example.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 23 Jan 2024 23:33:48 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1447830fc94e947a2abc3c473a339dfd";
logging-data="1568949"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/YYC6cOnB6G8d88GC00g2/"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:f0/kj9nHIlN95TQskDmPKeOBV/g=
 by: Lawrence D'Oliv - Tue, 23 Jan 2024 23:33 UTC

On Tue, 23 Jan 2024 14:51:52 -0800, Keith Thompson wrote:

> Lawrence D'Oliveiro <ldo@nz.invalid> writes:
>
>> On Tue, 23 Jan 2024 17:21:40 -0000 (UTC), Lew Pitcher wrote:
>>
>>> Less importantly, it also violates the convention that C macros are
>>> named in upper case to distinguish them from keywords and "regular"
>>> identifiers.
>>
>> Why does C allow lowercase in macro names, then?
>
> Because it's a convention, not a language rule.

So what would one mean by “violate”, other than “I personally don’t like
it”?

Re: Python (Re: iso646.h)

<87v87j8vxw.fsf@nosuchdomain.example.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31489&group=comp.lang.c#31489

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Keith.S....@gmail.com (Keith Thompson)
Newsgroups: comp.lang.c
Subject: Re: Python (Re: iso646.h)
Date: Tue, 23 Jan 2024 15:35:39 -0800
Organization: None to speak of
Lines: 35
Message-ID: <87v87j8vxw.fsf@nosuchdomain.example.com>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <uop48a$1dmoe$1@dont-email.me>
<uopclb$1f17i$7@dont-email.me> <uopfm2$1fj5r$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain
Injection-Info: dont-email.me; posting-host="1a14796772ccb3100f0d224a23edc517";
logging-data="1571551"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/UghJy5dyq0oZPp57bM02t"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)
Cancel-Lock: sha1:+QNT7aGFbI+ij+2CL9KL8B+95Ws=
sha1:awBFM7KWpzLO51qv19nmiMOwWqI=
 by: Keith Thompson - Tue, 23 Jan 2024 23:35 UTC

kalevi@kolttonen.fi (Kalevi Kolttonen) writes:
> Lawrence D'Oliveiro <ldo@nz.invalid> wrote:
>> On Tue, 23 Jan 2024 19:32:26 -0000 (UTC), Kalevi Kolttonen wrote:
>>
>>> Dennis Ritchie has said that he regretted the spelling of creat(2)
>>> function. Presumably the abbreviation was supposed to save one byte of
>>> storage.
>>
>> Given that, in POSIX, all the functions of creat(2) have been subsumed
>> under open(2) anyway, we can largely ignore that.
>
> I know. creat() is now completely redundant because
> open() suffices. The reason I brought it up was just
> so that people would realize that at least sometimes
> it was a matter of saving storage space - even one
> byte.

I don't believe it was ever about storage space.

Early UNIX systems used ASR-33 teletypes for interactive I/O. The
keyboard required a lot more physical force than modern keyboards do,
which made names like "mv" and "rm" easier to type than, say "rename"
and "delete". (And it's turned out that the terse names aren't much of
a problem. It would be easy to set up aliases with more verbose names,
but few if any people bother to do so.)

Some function names were limited to 6 characters by linker limitations,
but that doesn't explain "creat", which was just a poor choice.

[...]

--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
Working, but not speaking, for Medtronic
void Void(void) { Void(); } /* The recursive call of the void */

Re: Python (Re: iso646.h)

<uopik4$1fs5l$4@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31490&group=comp.lang.c#31490

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo...@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.lang.c
Subject: Re: Python (Re: iso646.h)
Date: Tue, 23 Jan 2024 23:37:40 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 22
Message-ID: <uopik4$1fs5l$4@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <uop48a$1dmoe$1@dont-email.me>
<uopclb$1f17i$7@dont-email.me> <uopfm2$1fj5r$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 23 Jan 2024 23:37:40 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1447830fc94e947a2abc3c473a339dfd";
logging-data="1568949"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+wngLn0uGJ9npwfbc4nc8C"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:vC1nYCvBYROs61+uWwTk+pGrIBo=
 by: Lawrence D'Oliv - Tue, 23 Jan 2024 23:37 UTC

On Tue, 23 Jan 2024 22:47:30 -0000 (UTC), Kalevi Kolttonen wrote:

> What?! Are you saying that there is no way to label functions as private
> in Python? That sounds absolutely horrible. Why would anyone design a
> language with object-oriented features without support for
> encapsulation?

Because Python is not Java.

For comparison, Java’s core language reference manual is (last I checked)
around 900 pages. Python’s core language is less than a quarter of that.
And yet it manages to include features, like custom operator overloads,
that Java does not.

Python also has metaclasses. Does your favourite OO language have
metaclasses?

Python doesn’t need “final” or “private” or “protected”, because it is
after all a dynamic language. You can write functions which are class
factories and function factories.

Actually, you can achieve the effect of access restrictions that way.

Re: iso646.h

<uopimr$1fs5l$5@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31491&group=comp.lang.c#31491

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!news.neodome.net!weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo...@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 23:39:07 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 7
Message-ID: <uopimr$1fs5l$5@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <87cytrajvc.fsf@nosuchdomain.example.com>
<uopcv5$1f17i$9@dont-email.me> <1kXrN.374899$83n7.255752@fx18.iad>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 23 Jan 2024 23:39:07 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1447830fc94e947a2abc3c473a339dfd";
logging-data="1568949"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+Gse/wwiJbENHEgxCCR/Dh"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:wpU3QhLOEy5vdMbbxnI7lBvFz6w=
 by: Lawrence D'Oliv - Tue, 23 Jan 2024 23:39 UTC

On Tue, 23 Jan 2024 22:45:17 GMT, Scott Lurndal wrote:

> The header file has been around for over three decades, yet it's not in
> common (or even uncommon) use.

The nice thing is, I don’t have to care. It has to be part of any
standards-compliant C compiler, therefore I am free to use it. And I do.

Re: iso646.h

<uopip7$1fs5l$6@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31492&group=comp.lang.c#31492

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!rocksolid2!news.neodome.net!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo...@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 23:40:23 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 16
Message-ID: <uopip7$1fs5l$6@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <87cytrajvc.fsf@nosuchdomain.example.com>
<uopcv5$1f17i$9@dont-email.me> <87zfwv8x3n.fsf@nosuchdomain.example.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 23 Jan 2024 23:40:23 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1447830fc94e947a2abc3c473a339dfd";
logging-data="1568949"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19deURzQtNL4j7sZJDCbdTP"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:VEKRlNYUQs9+QmGRuuyhIAcxOfM=
 by: Lawrence D'Oliv - Tue, 23 Jan 2024 23:40 UTC

On Tue, 23 Jan 2024 15:10:36 -0800, Keith Thompson wrote:

> Lawrence D'Oliveiro <ldo@nz.invalid> writes:
>
>> On Tue, 23 Jan 2024 12:13:27 -0800, Keith Thompson wrote:
>>
>>> There's no hard rule that operators must be punctuation, just a
>>> general trend.
>>
>> And iso646.h demonstrates that that trend is at an end.
>
> It does no such thing.

A “trend” means ongoing developments continue to follow the same pattern.
There have been no new non-alphanumeric operators added to C in, oh, over
40 years. Therefore the “trend” actually came to an end a long time ago.

Re: iso646.h

<20240123154446.374@kylheku.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31493&group=comp.lang.c#31493

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!news.chmurka.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: 433-929-...@kylheku.com (Kaz Kylheku)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 23:46:15 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 13
Message-ID: <20240123154446.374@kylheku.com>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <GVTrN.46982$U1cc.26176@fx04.iad>
<uop3ml$1d8ao$2@dont-email.me> <XbWrN.302617$xHn7.29225@fx14.iad>
<20240123135735.466@kylheku.com> <uopesm$1ffi1$1@dont-email.me>
Injection-Date: Tue, 23 Jan 2024 23:46:15 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="b53ada80e44a49509d1cc2e54e523b05";
logging-data="1575645"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+h+amwRgFa9lqW89MyPM/x0EvWSL1uf6s="
User-Agent: slrn/pre1.0.4-9 (Linux)
Cancel-Lock: sha1:l15YKUezdto1TUN+Ez6wEvSz9uw=
 by: Kaz Kylheku - Tue, 23 Jan 2024 23:46 UTC

On 2024-01-23, bart <bc@freeuk.com> wrote:
>> ANSI Common Lisp uses symbols like logand, logior, logxor, ...
>> for bitwise operations.
>
> Then it is confusing. What does it use for non-bitwise logical operations?

and, or, not

--
TXR Programming Language: http://nongnu.org/txr
Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal
Mastodon: @Kazinator@mstdn.ca
NOTE: If you use Google Groups, I don't see you, unless you're whitelisted.

Re: Python (Re: iso646.h)

<tiYrN.70137$Vrtf.9142@fx39.iad>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31494&group=comp.lang.c#31494

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx39.iad.POSTED!not-for-mail
X-newsreader: xrn 9.03-beta-14-64bit
Sender: scott@dragon.sl.home (Scott Lurndal)
From: sco...@slp53.sl.home (Scott Lurndal)
Reply-To: slp53@pacbell.net
Subject: Re: Python (Re: iso646.h)
Newsgroups: comp.lang.c
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me> <uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me> <uop0r1$1d4d4$1@dont-email.me> <uop48a$1dmoe$1@dont-email.me> <uopclb$1f17i$7@dont-email.me> <uopfm2$1fj5r$1@dont-email.me>
Lines: 19
Message-ID: <tiYrN.70137$Vrtf.9142@fx39.iad>
X-Complaints-To: abuse@usenetserver.com
NNTP-Posting-Date: Tue, 23 Jan 2024 23:51:53 UTC
Organization: UsenetServer - www.usenetserver.com
Date: Tue, 23 Jan 2024 23:51:53 GMT
X-Received-Bytes: 1646
 by: Scott Lurndal - Tue, 23 Jan 2024 23:51 UTC

kalevi@kolttonen.fi (Kalevi Kolttonen) writes:
>Lawrence D'Oliveiro <ldo@nz.invalid> wrote:
>> On Tue, 23 Jan 2024 19:32:26 -0000 (UTC), Kalevi Kolttonen wrote:
>>
>>> Dennis Ritchie has said that he regretted the spelling of creat(2)
>>> function. Presumably the abbreviation was supposed to save one byte of
>>> storage.
>>
>> Given that, in POSIX, all the functions of creat(2) have been subsumed
>> under open(2) anyway, we can largely ignore that.
>
>I know. creat() is now completely redundant because
>open() suffices. The reason I brought it up was just
>so that people would realize that at least sometimes
>it was a matter of saving storage space - even one
>byte.

IIRC, it was more about allowing space for a leading underscore
added during the link process.

Re: Python (Re: iso646.h)

<uopk9l$1g631$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31496&group=comp.lang.c#31496

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: bc...@freeuk.com (bart)
Newsgroups: comp.lang.c
Subject: Re: Python (Re: iso646.h)
Date: Wed, 24 Jan 2024 00:06:14 +0000
Organization: A noiseless patient Spider
Lines: 68
Message-ID: <uopk9l$1g631$1@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <uop48a$1dmoe$1@dont-email.me>
<uopclb$1f17i$7@dont-email.me> <uopfm2$1fj5r$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Jan 2024 00:06:13 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="c2c105cd8d24f169cc51794302af1cd4";
logging-data="1579105"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+WQLx416c5EjrjHH9nJWrbK9JWpJpexWI="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:0ZuWq9jUny13qxXqNi87LNucvaA=
Content-Language: en-GB
In-Reply-To: <uopfm2$1fj5r$1@dont-email.me>
 by: bart - Wed, 24 Jan 2024 00:06 UTC

On 23/01/2024 22:47, Kalevi Kolttonen wrote:
> Lawrence D'Oliveiro <ldo@nz.invalid> wrote:
>> On Tue, 23 Jan 2024 19:32:26 -0000 (UTC), Kalevi Kolttonen wrote:
>>
>>> Dennis Ritchie has said that he regretted the spelling of creat(2)
>>> function. Presumably the abbreviation was supposed to save one byte of
>>> storage.
>>
>> Given that, in POSIX, all the functions of creat(2) have been subsumed
>> under open(2) anyway, we can largely ignore that.
>
> I know. creat() is now completely redundant because
> open() suffices. The reason I brought it up was just
> so that people would realize that at least sometimes
> it was a matter of saving storage space - even one
> byte.
>
>> There are other worse problems with C. Like its use of “=” (the
>> mathematical equality operator) for assignment, instead of using the “:=”
>> symbol that the Algols had adopted.
>
> Well I started with Microsoft BASIC on Commodore 64 39 years ago.
> So I am well used to "=" and do not consider it a problem.

I've used ":=" with Algol and "=" with Fortran (a bit longer ago).

That is not itself the problem.

The problem is allowing both assignment and equality within the same
expression, which is what C does. Algol, Fortran and BASIC didn't do that.

If that wasn't the case, then you could use "=" for both assignment, and
equality, without ambiguity.

Languages that use ":=" and "=" for those operations, fare better than C
that uses "=" and "==".

>>> But the Python designers botched at least one thing concerning that
>>> philosophy: private functions are not defined by "private" keyword like
>>> in Java but instead the designers violated their own basic principle of
>>> easy readability: the "privateness" is defined by by prefixing the
>>> function names with an underscore ("_").
>>
>> That is merely a convention, a hint that the user might want to stay away
>> from such a symbol, not a hard requirement, which is why it was designed
>> that way. As Guido van Rossum has said: “We are all consenting adults
>> here”.
>
> What?! Are you saying that there is no way to label functions as private
> in Python? That sounds absolutely horrible. Why would anyone design a
> language with object-oriented features without support for encapsulation?

Python is 'ultra-dynamic'. That's why it's so hard to make it
performant. So you can do this:

import math

math.pi = "pie"
math.sqrt = lambda x:x*x

print(math.pi*2)
print(math.sqrt(10))

Output is:

piepie
100

Re: iso646.h

<87mssv8u1s.fsf@nosuchdomain.example.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31497&group=comp.lang.c#31497

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Keith.S....@gmail.com (Keith Thompson)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 16:16:31 -0800
Organization: None to speak of
Lines: 28
Message-ID: <87mssv8u1s.fsf@nosuchdomain.example.com>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uoosj4$1aidf$1@dont-email.me> <uopcdv$1f17i$5@dont-email.me>
<874jf3acjb.fsf@nosuchdomain.example.com>
<uopics$1fs5l$3@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Info: dont-email.me; posting-host="1a14796772ccb3100f0d224a23edc517";
logging-data="1579204"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18mqBiUXrSXW1ss6XVhRNsp"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)
Cancel-Lock: sha1:elyCreF1WlTqNyMyWYMdbyPyqvU=
sha1:4jtCGfaxLVoOTuKIgl5Cx3jIGNo=
 by: Keith Thompson - Wed, 24 Jan 2024 00:16 UTC

Lawrence D'Oliveiro <ldo@nz.invalid> writes:
> On Tue, 23 Jan 2024 14:51:52 -0800, Keith Thompson wrote:
>> Lawrence D'Oliveiro <ldo@nz.invalid> writes:
>>> On Tue, 23 Jan 2024 17:21:40 -0000 (UTC), Lew Pitcher wrote:
>>>> Less importantly, it also violates the convention that C macros are
>>>> named in upper case to distinguish them from keywords and "regular"
>>>> identifiers.
>>>
>>> Why does C allow lowercase in macro names, then?
>>
>> Because it's a convention, not a language rule.
>
> So what would one mean by “violate”, other than “I personally don’t like
> it”?

Obviously, it would mean not following the convention.

There clearly is a convention that most macro names should be defined in
all caps. Equally clearly, the standard library does not uniformly
follow that convention. I have no problem with that.

I might have some more thoughts on the matter, but I'm not sure where
you're going with this.

--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
Working, but not speaking, for Medtronic
void Void(void) { Void(); } /* The recursive call of the void */

Re: iso646.h

<87il3j8tjm.fsf@nosuchdomain.example.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31498&group=comp.lang.c#31498

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!paganini.bofh.team!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Keith.S....@gmail.com (Keith Thompson)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 16:27:25 -0800
Organization: None to speak of
Lines: 32
Message-ID: <87il3j8tjm.fsf@nosuchdomain.example.com>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me>
<87cytrajvc.fsf@nosuchdomain.example.com>
<uopcv5$1f17i$9@dont-email.me>
<87zfwv8x3n.fsf@nosuchdomain.example.com>
<uopip7$1fs5l$6@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Info: dont-email.me; posting-host="1a14796772ccb3100f0d224a23edc517";
logging-data="1586789"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/w2ex1iyfkZPwVhtOSWraW"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)
Cancel-Lock: sha1:GpyGicXswUFf1pq0qXkIXTAO7nU=
sha1:EituRA/+xjN9zKqfhg1dnq3X02o=
 by: Keith Thompson - Wed, 24 Jan 2024 00:27 UTC

Lawrence D'Oliveiro <ldo@nz.invalid> writes:
> On Tue, 23 Jan 2024 15:10:36 -0800, Keith Thompson wrote:
>> Lawrence D'Oliveiro <ldo@nz.invalid> writes:
>>> On Tue, 23 Jan 2024 12:13:27 -0800, Keith Thompson wrote:
>>>> There's no hard rule that operators must be punctuation, just a
>>>> general trend.
>>>
>>> And iso646.h demonstrates that that trend is at an end.
>>
>> It does no such thing.
>
> A “trend” means ongoing developments continue to follow the same pattern.
> There have been no new non-alphanumeric operators added to C in, oh, over
> 40 years. Therefore the “trend” actually came to an end a long time ago.

OK, "trend" was not the best word; it implies something changing over
time, which isn't really the case here. Perhaps "convention" would have
been more apt.

I believe the only thing iso646.h demonstrates is the (largely former)
need to write C on systems that do not support full ASCII. This is
fully explained in the C99 Rationale,
<http://www.open-std.org/jtc1/sc22/WG14/www/C99RationaleV5.10.pdf>;
search for "MSE.4". It says nothing about "and" being more readable
than "&&" on systems that are able to display the '&' character.

If you want to use it in your own code, nobody will stop you.

--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
Working, but not speaking, for Medtronic
void Void(void) { Void(); } /* The recursive call of the void */

Re: Python (Re: iso646.h)

<uoplvl$1geee$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31499&group=comp.lang.c#31499

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!rocksolid2!news.neodome.net!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: chris.m....@gmail.com (Chris M. Thomasson)
Newsgroups: comp.lang.c
Subject: Re: Python (Re: iso646.h)
Date: Tue, 23 Jan 2024 16:35:01 -0800
Organization: A noiseless patient Spider
Lines: 62
Message-ID: <uoplvl$1geee$1@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <uop48a$1dmoe$1@dont-email.me>
<uopclb$1f17i$7@dont-email.me> <uopfm2$1fj5r$1@dont-email.me>
<tiYrN.70137$Vrtf.9142@fx39.iad>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 24 Jan 2024 00:35:02 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="eb65a73d5fc6fb0010bcf2681c155871";
logging-data="1587662"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19KOyTMECSf/cLwV5XC7D/pwRjeyOSvAjg="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:26zC6SjKAJyGJIrtrnBz8bbt7L4=
In-Reply-To: <tiYrN.70137$Vrtf.9142@fx39.iad>
Content-Language: en-US
 by: Chris M. Thomasson - Wed, 24 Jan 2024 00:35 UTC

On 1/23/2024 3:51 PM, Scott Lurndal wrote:
> kalevi@kolttonen.fi (Kalevi Kolttonen) writes:
>> Lawrence D'Oliveiro <ldo@nz.invalid> wrote:
>>> On Tue, 23 Jan 2024 19:32:26 -0000 (UTC), Kalevi Kolttonen wrote:
>>>
>>>> Dennis Ritchie has said that he regretted the spelling of creat(2)
>>>> function. Presumably the abbreviation was supposed to save one byte of
>>>> storage.
>>>
>>> Given that, in POSIX, all the functions of creat(2) have been subsumed
>>> under open(2) anyway, we can largely ignore that.
>>
>> I know. creat() is now completely redundant because
>> open() suffices. The reason I brought it up was just
>> so that people would realize that at least sometimes
>> it was a matter of saving storage space - even one
>> byte.
>
> IIRC, it was more about allowing space for a leading underscore
> added during the link process.

Actually, this rings a bell in my head about that leading underscore.
Notice the difference between:

Take this function:
____________________________
..align 16
..globl ac_i686_stack_mpmc_push_cas
ac_i686_stack_mpmc_push_cas:
movl 4(%esp), %edx
movl (%edx), %eax
movl 8(%esp), %ecx

ac_i686_stack_mpmc_push_cas_retry:
movl %eax, (%ecx)
lock cmpxchgl %ecx, (%edx)
jne ac_i686_stack_mpmc_push_cas_retry
ret
____________________________

vs this one wrt mingw over on windows:

http://web.archive.org/web/20060214112545/http://appcore.home.comcast.net/appcore/src/cpu/i686/ac_i686_mingw_asm.html

Notice the leading underscore! Iirc, I could not get it to link
correctly using mingw.
____________________________
..align 16
..globl _ac_i686_stack_mpmc_push_cas
_ac_i686_stack_mpmc_push_cas:
movl 4(%esp), %edx
movl (%edx), %eax
movl 8(%esp), %ecx

_ac_i686_stack_mpmc_push_cas_retry:
movl %eax, (%ecx)
lock cmpxchgl %ecx, (%edx)
jne _ac_i686_stack_mpmc_push_cas_retry
ret
____________________________

Re: iso646.h

<uopm7n$1ggo3$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31500&group=comp.lang.c#31500

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!paganini.bofh.team!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo...@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Wed, 24 Jan 2024 00:39:19 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 5
Message-ID: <uopm7n$1ggo3$1@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uoosj4$1aidf$1@dont-email.me> <uopcdv$1f17i$5@dont-email.me>
<874jf3acjb.fsf@nosuchdomain.example.com> <uopics$1fs5l$3@dont-email.me>
<87mssv8u1s.fsf@nosuchdomain.example.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Jan 2024 00:39:19 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1447830fc94e947a2abc3c473a339dfd";
logging-data="1590019"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19yJKE7HgF0ZoPZq7l5CahR"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:PrUAQbvxV2OGwLSwehRw+bfTyzs=
 by: Lawrence D'Oliv - Wed, 24 Jan 2024 00:39 UTC

On Tue, 23 Jan 2024 16:16:31 -0800, Keith Thompson wrote:

> Obviously, it would mean not following the convention.

Thumbing one’s nose at staid convention? How shocking!

Re: Python (Re: iso646.h)

<uopm9e$1geee$2@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31501&group=comp.lang.c#31501

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: chris.m....@gmail.com (Chris M. Thomasson)
Newsgroups: comp.lang.c
Subject: Re: Python (Re: iso646.h)
Date: Tue, 23 Jan 2024 16:40:13 -0800
Organization: A noiseless patient Spider
Lines: 35
Message-ID: <uopm9e$1geee$2@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <uop48a$1dmoe$1@dont-email.me>
<uopclb$1f17i$7@dont-email.me> <uopfm2$1fj5r$1@dont-email.me>
<tiYrN.70137$Vrtf.9142@fx39.iad> <uoplvl$1geee$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 24 Jan 2024 00:40:14 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="eb65a73d5fc6fb0010bcf2681c155871";
logging-data="1587662"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/5tV6t9IHSmJtRpO0u8PfhAreOSEAIMGA="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:ta/Ou0Vlc7QAMJCrXYlYQTR5FDk=
In-Reply-To: <uoplvl$1geee$1@dont-email.me>
Content-Language: en-US
 by: Chris M. Thomasson - Wed, 24 Jan 2024 00:40 UTC

On 1/23/2024 4:35 PM, Chris M. Thomasson wrote:
> On 1/23/2024 3:51 PM, Scott Lurndal wrote:
>> kalevi@kolttonen.fi (Kalevi Kolttonen) writes:
>>> Lawrence D'Oliveiro <ldo@nz.invalid> wrote:
>>>> On Tue, 23 Jan 2024 19:32:26 -0000 (UTC), Kalevi Kolttonen wrote:
>>>>
>>>>> Dennis Ritchie has said that he regretted the spelling of creat(2)
>>>>> function. Presumably the abbreviation was supposed to save one byte of
>>>>> storage.
>>>>
>>>> Given that, in POSIX, all the functions of creat(2) have been subsumed
>>>> under open(2) anyway, we can largely ignore that.
>>>
>>> I know. creat() is now completely redundant because
>>> open() suffices. The reason I brought it up was just
>>> so that people would realize that at least sometimes
>>> it was a matter of saving storage space - even one
>>> byte.
>>
>> IIRC, it was more about allowing space for a leading underscore
>> added during the link process.
>
> Actually, this rings a bell in my head about that leading underscore.
> Notice the difference between:
[...]

For some damn reason that bell toll made me think of the following song:

Ring My Bell

https://youtu.be/Dp11DjaUc5A?t=45

lol! ;^D

Re: Python (Re: iso646.h)

<uopmat$1ggo3$2@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31502&group=comp.lang.c#31502

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!news.chmurka.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo...@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.lang.c
Subject: Re: Python (Re: iso646.h)
Date: Wed, 24 Jan 2024 00:41:02 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 8
Message-ID: <uopmat$1ggo3$2@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <uop48a$1dmoe$1@dont-email.me>
<uopclb$1f17i$7@dont-email.me> <uopfm2$1fj5r$1@dont-email.me>
<87v87j8vxw.fsf@nosuchdomain.example.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Jan 2024 00:41:02 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1447830fc94e947a2abc3c473a339dfd";
logging-data="1590019"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/3TrxKVlLuQAExlbDQ4mYd"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:fX+BVb0yTqSVEuMlo4cTjLi4jII=
 by: Lawrence D'Oliv - Wed, 24 Jan 2024 00:41 UTC

On Tue, 23 Jan 2024 15:35:39 -0800, Keith Thompson wrote:

> The keyboard required a lot more physical force than modern keyboards
> do, which made names like "mv" and "rm" easier to type than, say
> "rename" and "delete".

And yet it turns out the OS calls are indeed things like “rename” and
“unlink”, not “mv” or “rm”.

Re: iso646.h

<uopmk3$1gha5$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31503&group=comp.lang.c#31503

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!rocksolid2!news.neodome.net!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: jameskuy...@alumni.caltech.edu (James Kuyper)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 19:45:55 -0500
Organization: A noiseless patient Spider
Lines: 30
Message-ID: <uopmk3$1gha5$1@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <GVTrN.46982$U1cc.26176@fx04.iad>
<uop3ml$1d8ao$2@dont-email.me> <XbWrN.302617$xHn7.29225@fx14.iad>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 24 Jan 2024 00:45:55 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="9784eae7c916e6c05aac88b38cd3ce4e";
logging-data="1590597"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18zsXqVt7vOvxNdQVjQU7xs5bW3sinXdaA="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:clOVmep0G3aqUhPqWJcHIAJFNOg=
Content-Language: en-US
In-Reply-To: <XbWrN.302617$xHn7.29225@fx14.iad>
 by: James Kuyper - Wed, 24 Jan 2024 00:45 UTC

On 1/23/24 16:28, Scott Lurndal wrote:
> James Kuyper <jameskuyper@alumni.caltech.edu> writes:
>> On 1/23/24 13:52, Scott Lurndal wrote:
>>> bart <bc@freeuk.com> writes:
>>>> On 23/01/2024 16:32, Malcolm McLean wrote:
>>>
>>>>
>>>> Every explanation for && and || for every language that copied them from
>>>> C, is that && means AND, and || means OR.
>>>
>>> in C, && specifically means 'conditional and'. The programmer can
>>> rely on the fact that the second term will not be evaluated if
>>> the first term evaluates to false.
>>
>> Actually, C uses the term "Logical AND".
>
> The term 'conditional and' has been in common use for decades.

I've never heard of it. When searching Wikipedia, "conditional and" the
first two pages of hits don't seem to contain any that are actually
relevant. A search on "logical and", on the other hand, redirects to
"logical conjunction", which does seem to be relevant, yet it makes no
reference to "conditional and" as an alternative term for the same
thing. I think that that term might not be as widely used as you think.

A Google search for "logical and" has many relevant hits. A search for
"conditional and" produces a much smaller number of hits, which suggest
that it's a term associated with C# and Java, and at least one source
described it by saying the "coditional and operator performs a ogical
and operation", which sounds rather confused to me.

Re: iso646.h

<uopmm7$1ggo3$3@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31504&group=comp.lang.c#31504

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo...@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Wed, 24 Jan 2024 00:47:03 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 20
Message-ID: <uopmm7$1ggo3$3@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <87cytrajvc.fsf@nosuchdomain.example.com>
<uopcv5$1f17i$9@dont-email.me> <87zfwv8x3n.fsf@nosuchdomain.example.com>
<uopip7$1fs5l$6@dont-email.me> <87il3j8tjm.fsf@nosuchdomain.example.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Jan 2024 00:47:03 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1447830fc94e947a2abc3c473a339dfd";
logging-data="1590019"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX192daj73AttDO7U6mqB1FWo"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:PR6I4f0I5dpKOK9eS2fiQUbdJSc=
 by: Lawrence D'Oliv - Wed, 24 Jan 2024 00:47 UTC

On Tue, 23 Jan 2024 16:27:25 -0800, Keith Thompson wrote:

> I believe the only thing iso646.h demonstrates is the (largely former)
> need to write C on systems that do not support full ASCII.

It does seem a very late addition for a purpose which would have been a
lot more relevant decades earlier. By that point, implementations that did
not support full ASCII would have been museum pieces.

Reminds me of how PL/I added “eq”, “ne”, “lt”, ”gt”, “le”, “ge” as
alternatives to “=”, “¬=”, “<”, ”>“, “¬>”, “¬<” for use on systems which
didn’t have the requisite character set.

Incidentally, those six symbols were the only reserved words in the entire
language. You’d think they could have done it Fortran-style, without
reserved words.

> If you want to use it in your own code, nobody will stop you.

But will I continue to hear complaints from you about it?

Re: iso646.h

<87bk9b8qiy.fsf@nosuchdomain.example.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31505&group=comp.lang.c#31505

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Keith.S....@gmail.com (Keith Thompson)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 17:32:37 -0800
Organization: None to speak of
Lines: 25
Message-ID: <87bk9b8qiy.fsf@nosuchdomain.example.com>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me>
<87cytrajvc.fsf@nosuchdomain.example.com>
<uopcv5$1f17i$9@dont-email.me>
<87zfwv8x3n.fsf@nosuchdomain.example.com>
<uopip7$1fs5l$6@dont-email.me>
<87il3j8tjm.fsf@nosuchdomain.example.com>
<uopmm7$1ggo3$3@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain
Injection-Info: dont-email.me; posting-host="1a14796772ccb3100f0d224a23edc517";
logging-data="1600186"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/qvIHw1M49wIvhEdiBK1G5"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)
Cancel-Lock: sha1:DlVeoOu+viPS38/wI5NhdWhlBmw=
sha1:TZfqWZM8kSJyZgAYjSQNK0cd5pU=
 by: Keith Thompson - Wed, 24 Jan 2024 01:32 UTC

Lawrence D'Oliveiro <ldo@nz.invalid> writes:
> On Tue, 23 Jan 2024 16:27:25 -0800, Keith Thompson wrote:
>> I believe the only thing iso646.h demonstrates is the (largely former)
>> need to write C on systems that do not support full ASCII.
>
> It does seem a very late addition for a purpose which would have been a
> lot more relevant decades earlier. By that point, implementations that did
> not support full ASCII would have been museum pieces.

<iso646.h> was added in 1995, and it was intended to replace a number of
implementation-specific workarounds. You can learn more if you'll read
the C99 Rationale that I cited earlier.

[...]

>> If you want to use it in your own code, nobody will stop you.
>
> But will I continue to hear complaints from you about it?

I can't continue what I never started.

--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
Working, but not speaking, for Medtronic
void Void(void) { Void(); } /* The recursive call of the void */

Re: iso646.h

<uoptdp$1hdq3$2@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31506&group=comp.lang.c#31506

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo...@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Wed, 24 Jan 2024 02:42:01 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 18
Message-ID: <uoptdp$1hdq3$2@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <87cytrajvc.fsf@nosuchdomain.example.com>
<uopcv5$1f17i$9@dont-email.me> <87zfwv8x3n.fsf@nosuchdomain.example.com>
<uopip7$1fs5l$6@dont-email.me> <87il3j8tjm.fsf@nosuchdomain.example.com>
<uopmm7$1ggo3$3@dont-email.me> <87bk9b8qiy.fsf@nosuchdomain.example.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Jan 2024 02:42:01 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1447830fc94e947a2abc3c473a339dfd";
logging-data="1619779"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18Hs43PDxadzPDrZPhQd627"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:gBwxyQuwfe8LHf6Q7tdoRaAhDL8=
 by: Lawrence D'Oliv - Wed, 24 Jan 2024 02:42 UTC

On Tue, 23 Jan 2024 17:32:37 -0800, Keith Thompson wrote:

> Lawrence D'Oliveiro <ldo@nz.invalid> writes:
>>
>> It does seem a very late addition for a purpose which would have been a
>> lot more relevant decades earlier. By that point, implementations that
>> did not support full ASCII would have been museum pieces.
>
> <iso646.h> was added in 1995, and it was intended to replace a number of
> implementation-specific workarounds.

Just in time for them to become unnecessary, I would say.

>> But will I continue to hear complaints from you about it?
>
> I can't continue what I never started.

I’ll take that as a “yes”.

Re: Python (Re: iso646.h)

<20240123190258.897@kylheku.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31508&group=comp.lang.c#31508

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!news.samoylyk.net!usenet.goja.nl.eu.org!weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: 433-929-...@kylheku.com (Kaz Kylheku)
Newsgroups: comp.lang.c
Subject: Re: Python (Re: iso646.h)
Date: Wed, 24 Jan 2024 03:13:05 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 23
Message-ID: <20240123190258.897@kylheku.com>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <uop48a$1dmoe$1@dont-email.me>
<uopclb$1f17i$7@dont-email.me> <uopfm2$1fj5r$1@dont-email.me>
<87v87j8vxw.fsf@nosuchdomain.example.com> <uopmat$1ggo3$2@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Jan 2024 03:13:05 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="b53ada80e44a49509d1cc2e54e523b05";
logging-data="1754475"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18xJmmzrqqYQWEBpqd2QP/YWaXuwYX3ogY="
User-Agent: slrn/pre1.0.4-9 (Linux)
Cancel-Lock: sha1:v2ID/xU0pYOxq1zisXIWgWkgbr4=
 by: Kaz Kylheku - Wed, 24 Jan 2024 03:13 UTC

On 2024-01-24, Lawrence D'Oliveiro <ldo@nz.invalid> wrote:
> On Tue, 23 Jan 2024 15:35:39 -0800, Keith Thompson wrote:
>
>> The keyboard required a lot more physical force than modern keyboards
>> do, which made names like "mv" and "rm" easier to type than, say
>> "rename" and "delete".
>
> And yet it turns out the OS calls are indeed things like “rename” and
> “unlink”, not “mv” or “rm”.

Consider that the /bin/mv executable perhaps only contains as few
as just one call to the rename function.

The mv program is invoked many more times than the number of
times someone typed out the rename call in its source code.

Short keyboard sequences in the UI level are much more important
than function names in the source code.

--
TXR Programming Language: http://nongnu.org/txr
Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal
Mastodon: @Kazinator@mstdn.ca

Re: iso646.h

<uoq3ie$1m1bm$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31510&group=comp.lang.c#31510

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!usenet.network!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: jameskuy...@alumni.caltech.edu (James Kuyper)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 23:26:54 -0500
Organization: A noiseless patient Spider
Lines: 16
Message-ID: <uoq3ie$1m1bm$1@dont-email.me>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me> <87cytrajvc.fsf@nosuchdomain.example.com>
<uopcv5$1f17i$9@dont-email.me> <87zfwv8x3n.fsf@nosuchdomain.example.com>
<uopip7$1fs5l$6@dont-email.me> <87il3j8tjm.fsf@nosuchdomain.example.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 24 Jan 2024 04:26:54 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="9784eae7c916e6c05aac88b38cd3ce4e";
logging-data="1770870"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18zRQmn6Ls1UPqQnqgOdFlyuD1fdG+xcr4="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:h/vjnAlUTiQZ8orAXGx+Uar2d/E=
Content-Language: en-US
In-Reply-To: <87il3j8tjm.fsf@nosuchdomain.example.com>
 by: James Kuyper - Wed, 24 Jan 2024 04:26 UTC

On 1/23/24 19:27, Keith Thompson wrote:
....
> I believe the only thing iso646.h demonstrates is the (largely former)
> need to write C on systems that do not support full ASCII. This is
> fully explained in the C99 Rationale,
> <http://www.open-std.org/jtc1/sc22/WG14/www/C99RationaleV5.10.pdf>;
> search for "MSE.4". It says nothing about "and" being more readable
> than "&&" on systems that are able to display the '&' character.

It does say, in lines 26-29, that "The Committee recognizes that the
solution offered in this header is incomplete and involves a mixture of
approaches, but nevertheless believes that it can help make Standard C
programs more readable." However, if you examine the context of that
statement, what it's saying is that they are more readable than is
trigraphs. In other words, they are saying that "or" is more readable
than "??!??!", which I doubt that anyone would disagree with.

Re: iso646.h

<877cjz8h8p.fsf@nosuchdomain.example.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=31512&group=comp.lang.c#31512

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!newsfeed.endofthelinebbs.com!news.hispagatos.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Keith.S....@gmail.com (Keith Thompson)
Newsgroups: comp.lang.c
Subject: Re: iso646.h
Date: Tue, 23 Jan 2024 20:53:10 -0800
Organization: None to speak of
Lines: 34
Message-ID: <877cjz8h8p.fsf@nosuchdomain.example.com>
References: <uokhnk$eiln$1@dont-email.me> <uol92t$l82b$3@dont-email.me>
<uomjfr$sopf$1@dont-email.me> <uoopm9$1blvh$1@dont-email.me>
<uop0r1$1d4d4$1@dont-email.me>
<87cytrajvc.fsf@nosuchdomain.example.com>
<uopcv5$1f17i$9@dont-email.me>
<87zfwv8x3n.fsf@nosuchdomain.example.com>
<uopip7$1fs5l$6@dont-email.me>
<87il3j8tjm.fsf@nosuchdomain.example.com>
<uoq3ie$1m1bm$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Info: dont-email.me; posting-host="1a14796772ccb3100f0d224a23edc517";
logging-data="1776117"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/SU/fzfPvnMEY2jAUOI1I/"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)
Cancel-Lock: sha1:vlsB8LBuqIFJ72JBFDBvCWr6mGA=
sha1:LzRP9GMC59N4SNixkf51dJLr81g=
 by: Keith Thompson - Wed, 24 Jan 2024 04:53 UTC

James Kuyper <jameskuyper@alumni.caltech.edu> writes:
> On 1/23/24 19:27, Keith Thompson wrote:
> ...
>> I believe the only thing iso646.h demonstrates is the (largely former)
>> need to write C on systems that do not support full ASCII. This is
>> fully explained in the C99 Rationale,
>> <http://www.open-std.org/jtc1/sc22/WG14/www/C99RationaleV5.10.pdf>;
>> search for "MSE.4". It says nothing about "and" being more readable
>> than "&&" on systems that are able to display the '&' character.
>
> It does say, in lines 26-29, that "The Committee recognizes that the
> solution offered in this header is incomplete and involves a mixture of
> approaches, but nevertheless believes that it can help make Standard C
> programs more readable." However, if you examine the context of that
> statement, what it's saying is that they are more readable than is
> trigraphs. In other words, they are saying that "or" is more readable
> than "??!??!", which I doubt that anyone would disagree with.

It's also more readable than, say, "Hello, world¥n", which is what
"Hello, world\n" looks like in JIS X 0201, a Japanese variant of ASCII.

Before Unicode, it was common to define 7-bit character sets that
replaced some characters with local versions such as accented letters.
I vaguely recall that some C programmers back in the day simply got used
to backslashes looking like Yen signs.

The Rationale also makes it clear that trigraphs, digraphs, and
<iso646.h> were all invented (not all at the same time) to solve the
same class of problems.

--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
Working, but not speaking, for Medtronic
void Void(void) { Void(); } /* The recursive call of the void */


devel / comp.lang.c / Re: iso646.h

Pages:1234567891011121314151617181920212223242526
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor