Deutsch   English   Français   Italiano  
<100i43s$29dr0$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!eternal-september.org!.POSTED!not-for-mail
From: Richard Heathfield <rjh@cpax.org.uk>
Newsgroups: comp.lang.c
Subject: Re: encapsulating directory operations
Date: Tue, 20 May 2025 15:37:46 +0100
Organization: Fix this later
Lines: 173
Message-ID: <100i43s$29dr0$1@dont-email.me>
References: <100h650$23r5l$1@dont-email.me>
 <87ecwj1vy9.fsf@nosuchdomain.example.com> <100hieb$261k5$1@dont-email.me>
 <100hs85$27qbn$1@dont-email.me> <100i14o$28o7d$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 20 May 2025 16:37:49 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="3f6d60df11199315dcee71f6a818ac4e";
	logging-data="2406240"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX1+xlnThCtbrC9ybwIPueSApA/x2i4/C55IXYov55DQ6lw=="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:c3298LH2CyujB4V2iCV/vT59Oak=
In-Reply-To: <100i14o$28o7d$1@dont-email.me>
Content-Language: en-GB
Bytes: 7909

[This should be fun.]

On 20/05/2025 14:47, Paul Edwards wrote:
> "David Brown" <david.brown@hesbynett.no> wrote in message
> news:100hs85$27qbn$1@dont-email.me...
>> On 20/05/2025 11:36, Paul Edwards wrote:
>>> "Keith Thompson" <Keith.S.Thompson+u@gmail.com> wrote in message
>>> news:87ecwj1vy9.fsf@nosuchdomain.example.com...
>>>> "Paul Edwards" <mutazilah@gmail.com> writes:
>>
>>>>> And C90 (etc) could potentially be extended to include a folder.h

directory.h, damn you! Folders are for schoolteachers, not 
programmers. We could fall out over this.

>>>>
>>>> C90 will never be extended.  It was made obsolete by 
>>>> C99, which was made obsolete by C11, which was made
>>>> obsolete by C23. You're free to invent your own language
>>>> based on C90 if you like, but C went in a different 
>>>> direction decades ago.
>>>
>>> That depends on your definition of "C". Ritchie is no longer here to
>>> adjudicate whether something close to C90 - in the spirit of the
>>> original C, is the true successor to his language, and which one is
>>> a complete and utter joke of no relation to anything he designed.
>>>
>>
>> Once C was standardised - first by ANSI, then immediately afterwards by
>> ISO - the "definition of C" became clear.
> 
> Yes, I agree with that.

So do I. So far, so good.

>> The language is covered by an
>> international standard, so "C" is the language defined by that standard.
>>    Thus "C" means "C23" at the moment - each newly published C standard
>> "cancels and replaces" the previous version.
> 
> I don't agree with this. I'm sure the ISO committee is keen
> to "cancel" the previous work.

Whether you agree with David or not, he's correct. He has 
accurately described the way the world sees C.

You might argue that the world sees it wrong, and who am I to 
dissuade you? But ISO has far more clout than you or me, alas.

> But I have a different opinion.
> 
> I doubt that I am alone.

It would seem not. Pull up a chair.

> I'm probably in a minority, but so what?

You're in /my/ minority, but that's okay; there's plenty of room.

>> Ritchie's opinion hasn't
>> had any connection to the "definition of C" since 1989.  I don't know if
>> he ever expressed a public opinion on C99, or the plans for C11.  I
>> would, however, be astounded if he had considered it "a complete and
>> utter joke of no relation to anything he designed".
> 
> Well, in the 1990s I had some work colleagues who were
> incensed that I had converted some K&R C code to C90,
> and called it "nancy C". I pointed out that Ritchie himself
> had endorsed the standard, and they still didn't budge,
> saying that he had become deranged or something like that.

Ritchie single-handedly fought off noalias. Deranged my foot! All 
his marbles present and correct, and every marble a winner.

>  From another corner I still deal with people who insist
> that everything should be written in assembler.

Computer scientists hunt elephants by exercising Algorithm
A:
1. Go to Africa
2. Start at the Cape of Good Hope
3. Work northwards in an orderly manner, traversing the continent 
alternately east and west.
4. During each traverse pass,
(a) Catch each animal seen
(b) Compare each animal caught to a known elephant
(c) Stop when a match is detected

Experienced programmers modify Algorithm A by placing
a known elephant in Cairo to ensure that the algorithm will
terminate.

Assembly language programmers prefer to execute
Algorithm A on their hands and knees.

> And in another corner, there are people who claim that I
> am at fault for not making "my" compiler (a slight variation
> of gcc 3.2.3) run in under 16 MiB of memory.

Mibs are marbles. You can't run a C compiler under 16 marbles, 
not even if you bring in Dennis Ritchie.

> I understand where these people are coming from.

So do I, but I expect it was a typo for 16 GB.

> And I can see the alternative described by that Jeff article
> I referenced.
> 
> But my starting position is that I (sort of) can't personally
> fault the C90 standard, and the assembler code produced
> by a typical C compiler is exemplary, and that this is the
> basis for the lingua franca of programming.

Right.

>> (And while I don't think that an "appeal to authority" argument has much
>> merit, he did say that he found Linux "quite delightful" as a
>> continuation of UNIX, and I would not expect him to have viewed your OS
>> ideas as productive.)
> 
> I'm not asking him to approve my OS ideas. I'm asking him
> to explain what is wrong with the C90 that he approved of,
> and whether my mentioned extensions are reasonable.

I'm afraid we're about 13½ years too late to expect an answer 
from the man himself, but I could guess at his answers:

(a) nothing;
(b) they make a reasonable library, but there's no reason to 
change C90. If people find the library useful, they will use it 
and the word will spread.

>> But Keith is absolutely correct here.  C90 is C90, and will remain that
>> way (baring the very unlikely possibility of minor technical corrections).
>>
>> You can make your own libraries, and OS's, and extensions, and languages
>> - whatever makes you happy.  (And if you enjoy what you are doing, and
>> it's not harming anyone, then that's all the reason you need.  You don't
>> need approval from anyone else.  Don't let me or anyone else hinder you
>> enjoying yourself.)  However, nothing that you ever do will be an
>> extension to C90.
> 
> You seem to have a different definition of "extension to C90" to me, then.

Then what do you mean by it? I suspect David thinks you mean an 
update to the ISO C90 document requiring all conforming C 
compilers to adopt your new library. And, like me, Keith and 
David know full well that that ain't gonna happen.

> 
> Which is also fine.
> 
> Regardless, I intend to compete with the ISO committee, and
> not so much start from scratch, as start from C90.
> 
> My branch may not appeal to a majority, but I'm not particularly
> trying to appeal to a majority. I'm interested in appealing to the
> people who I work with (e.g. author of pdld). And I'm also
> interested in technical guidance from the majority who likely
> have more technical skills than me, regardless of whether they
> agree with my approach/goals or not (spoiler: they don't).

If you want to publish a library, nobody is going to argue 
against you doing so. You can't have too many libraries. (Well, I 
expect you can, but it's hard.)

-- 
Richard Heathfield
Email: rjh at cpax dot org dot uk
"Usenet is a strange place" - dmr 29 July 1999
Sig line 4 vacant - apply within