Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Dennis Ritchie is twice as bright as Steve Jobs, and only half wrong. -- Jim Gettys


devel / comp.lang.c / Re: What I've learned in comp.lang.c

SubjectAuthor
* What I've learned in comp.lang.cbart
+* Re: What I've learned in comp.lang.cKaz Kylheku
|+* Re: What I've learned in comp.lang.cChris M. Thomasson
||`* Re: What I've learned in comp.lang.cKaz Kylheku
|| `* Re: What I've learned in comp.lang.cChris M. Thomasson
||  `* Re: What I've learned in comp.lang.cChris M. Thomasson
||   `- Re: What I've learned in comp.lang.cJan van den Broek
|+- Re: What I've learned in comp.lang.cMichael S
|+* Re: What I've learned in comp.lang.cMichael S
||`* Re: What I've learned in comp.lang.cDavid Brown
|| `* Re: What I've learned in comp.lang.cKaz Kylheku
||  `* Re: What I've learned in comp.lang.cDavid Brown
||   +- Re: What I've learned in comp.lang.cChris M. Thomasson
||   +* Re: What I've learned in comp.lang.cMichael S
||   |`- Re: What I've learned in comp.lang.cDavid Brown
||   `* Re: What I've learned in comp.lang.cLawrence D'Oliveiro
||    `* Re: What I've learned in comp.lang.cDavid Brown
||     +* Re: What I've learned in comp.lang.cMalcolm McLean
||     |+* Re: What I've learned in comp.lang.cBen Bacarisse
||     ||+* Re: What I've learned in comp.lang.cbart
||     |||+* Re: What I've learned in comp.lang.cDavid Brown
||     ||||`* Re: What I've learned in comp.lang.cbart
||     |||| `- Re: What I've learned in comp.lang.cDavid Brown
||     |||`* Re: What I've learned in comp.lang.cBen Bacarisse
||     ||| `* Re: What I've learned in comp.lang.cbart
||     |||  +* Re: What I've learned in comp.lang.cScott Lurndal
||     |||  |`* Re: What I've learned in comp.lang.cbart
||     |||  | `* Re: What I've learned in comp.lang.cLawrence D'Oliveiro
||     |||  |  `- Re: What I've learned in comp.lang.cMalcolm McLean
||     |||  +* Re: What I've learned in comp.lang.cDavid Brown
||     |||  |`* Re: What I've learned in comp.lang.cbart
||     |||  | +* Re: What I've learned in comp.lang.cKaz Kylheku
||     |||  | |`* Re: What I've learned in comp.lang.cbart
||     |||  | | +* Re: What I've learned in comp.lang.cKaz Kylheku
||     |||  | | |`- Re: What I've learned in comp.lang.cbart
||     |||  | | `* Re: What I've learned in comp.lang.cTim Rentsch
||     |||  | |  `* Re: What I've learned in comp.lang.cbart
||     |||  | |   +- Re: What I've learned in comp.lang.cDavid Brown
||     |||  | |   `- Re: What I've learned in comp.lang.cTim Rentsch
||     |||  | `- Re: What I've learned in comp.lang.cDavid Brown
||     |||  `* Re: What I've learned in comp.lang.cBen Bacarisse
||     |||   +* Re: What I've learned in comp.lang.cMalcolm McLean
||     |||   |+* Re: What I've learned in comp.lang.cDavid Brown
||     |||   ||+- Re: What I've learned in comp.lang.cMalcolm McLean
||     |||   ||`* Re: What I've learned in comp.lang.cbart
||     |||   || `- Re: What I've learned in comp.lang.cDavid Brown
||     |||   |`- Re: What I've learned in comp.lang.cBen Bacarisse
||     |||   `- Re: What I've learned in comp.lang.cTim Rentsch
||     ||`* Re: What I've learned in comp.lang.cMalcolm McLean
||     || +- Re: What I've learned in comp.lang.cDavid Brown
||     || +- Re: What I've learned in comp.lang.cBen Bacarisse
||     || `- Re: What I've learned in comp.lang.cKeith Thompson
||     |+* Re: What I've learned in comp.lang.cDavid Brown
||     ||+- Re: What I've learned in comp.lang.cRichard Harnden
||     ||+* Re: What I've learned in comp.lang.cMalcolm McLean
||     |||`- Re: What I've learned in comp.lang.cDavid Brown
||     ||`- Re: What I've learned in comp.lang.cLawrence D'Oliveiro
||     |`* Re: What I've learned in comp.lang.cScott Lurndal
||     | `- Re: What I've learned in comp.lang.cMichael S
||     `* Re: What I've learned in comp.lang.cBen Bacarisse
||      `* Re: What I've learned in comp.lang.cDavid Brown
||       `* Re: What I've learned in comp.lang.cBen Bacarisse
||        +* Re: What I've learned in comp.lang.cMalcolm McLean
||        |+* Re: What I've learned in comp.lang.cDavid Brown
||        ||`* Re: What I've learned in comp.lang.cMalcolm McLean
||        || +- Re: What I've learned in comp.lang.cKaz Kylheku
||        || `* Re: What I've learned in comp.lang.cLawrence D'Oliveiro
||        ||  `* Re: What I've learned in comp.lang.cMalcolm McLean
||        ||   `- Re: What I've learned in comp.lang.cKaz Kylheku
||        |`* Re: What I've learned in comp.lang.cBen Bacarisse
||        | `* Re: What I've learned in comp.lang.cMalcolm McLean
||        |  `* Re: What I've learned in comp.lang.cDavid Brown
||        |   +* Re: What I've learned in comp.lang.cMalcolm McLean
||        |   |`- Re: What I've learned in comp.lang.cDavid Brown
||        |   `* Re: What I've learned in comp.lang.cScott Lurndal
||        |    +- Re: What I've learned in comp.lang.cRichard Harnden
||        |    `- Re: What I've learned in comp.lang.cBen Bacarisse
||        `- Re: What I've learned in comp.lang.cTim Rentsch
|+* Re: What I've learned in comp.lang.cMichael S
||`* Re: What I've learned in comp.lang.cLawrence D'Oliveiro
|| +- Re: What I've learned in comp.lang.cRichard Harnden
|| +* Re: What I've learned in comp.lang.cMichael S
|| |`- Re: What I've learned in comp.lang.cDavid Brown
|| +* Re: What I've learned in comp.lang.cChris M. Thomasson
|| |`- Re: What I've learned in comp.lang.cChris M. Thomasson
|| `* Re: What I've learned in comp.lang.cDavid Brown
||  +- Re: What I've learned in comp.lang.cChris M. Thomasson
||  `* Re: What I've learned in comp.lang.cLawrence D'Oliveiro
||   `* Re: What I've learned in comp.lang.cDavid Brown
||    +* Re: What I've learned in comp.lang.cMichael S
||    |`- Re: What I've learned in comp.lang.cDavid Brown
||    `* Re: What I've learned in comp.lang.cScott Lurndal
||     +* Re: What I've learned in comp.lang.cDavid Brown
||     |+- Re: What I've learned in comp.lang.cChris M. Thomasson
||     |`* Re: What I've learned in comp.lang.cMichael S
||     | `* Re: What I've learned in comp.lang.cDavid Brown
||     |  `* Re: What I've learned in comp.lang.cMichael S
||     |   `* Re: What I've learned in comp.lang.cDavid Brown
||     |    `* Re: What I've learned in comp.lang.cMichael S
||     |     `* Re: What I've learned in comp.lang.cDavid Brown
||     |      `* Re: What I've learned in comp.lang.cLawrence D'Oliveiro
||     `- Re: What I've learned in comp.lang.cLawrence D'Oliveiro
|`* Re: What I've learned in comp.lang.cbart
+* Re: What I've learned in comp.lang.cTim Rentsch
+* Re: What I've learned in comp.lang.cMalcolm McLean
+- Re: What I've learned in comp.lang.cDan Purgert
+* Re: What I've learned in comp.lang.cDavid Brown
`- Re: What I've learned in comp.lang.cLawrence D'Oliveiro

Pages:123456
Re: What I've learned in comp.lang.c

<20240209165245.00007533@yahoo.com>

  copy mid

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

  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: already5...@yahoo.com (Michael S)
Newsgroups: comp.lang.c
Subject: Re: What I've learned in comp.lang.c
Date: Fri, 9 Feb 2024 16:52:45 +0200
Organization: A noiseless patient Spider
Lines: 47
Message-ID: <20240209165245.00007533@yahoo.com>
References: <uppcfk$3ui34$1@dont-email.me>
<20240204191630.146@kylheku.com>
<20240205190209.00002c1f@yahoo.com>
<uprqu3$gcqc$4@dont-email.me>
<upsrrq$qb8m$2@dont-email.me>
<upuf3o$13gvv$2@dont-email.me>
<upvd2v$1bcum$2@dont-email.me>
<daOwN.308693$7sbb.250916@fx16.iad>
<uq0qdg$1j1v4$4@dont-email.me>
<20240207233706.000068fd@yahoo.com>
<uq217c$1sep3$1@dont-email.me>
<20240209155524.00006022@yahoo.com>
<uq5crl$2lqj3$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Injection-Info: dont-email.me; posting-host="f52743512d93bb5249b9875b402dbbbd";
logging-data="2820574"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19Lw7OZzlOzMZkfy+laamjXI9FtSODlxII="
Cancel-Lock: sha1:mLuL7PnqT0INT1xKuy+sMwEgs/Q=
X-Newsreader: Claws Mail 4.1.1 (GTK 3.24.34; x86_64-w64-mingw32)
 by: Michael S - Fri, 9 Feb 2024 14:52 UTC

On Fri, 9 Feb 2024 15:29:09 +0100
David Brown <david.brown@hesbynett.no> wrote:

> On 09/02/2024 14:55, Michael S wrote:
> > On Thu, 8 Feb 2024 08:52:12 +0100
> > David Brown <david.brown@hesbynett.no> wrote:
> >>
> >> You are just a rounding error :-)
> >>
> >> But it is interesting to hear of exceptions to the general trend.
> >>
> >
> > That is one option.
> > Another one is you pulling your statistics out of one of your major
> > anatomical features.
> >
>
> You do know that embedded Windows - "WinCE" - had its last version
> release in 2013, and ended extended support last year? It's share of
> the market (whatever market you choose) was never particularly
> significant despite significant effort from MS, which is why they
> dropped it.
>
> Clearly my comment about "two or three unfortunate people" was not
> meant as a serious statistic.
>
> And of course people also make systems that can be classified as
> "embedded", but with a desktop (or even server) version of Windows.
>

Do you know that there were two families of Windows OSes intended for
use in embedded devices that used completely different kernels and were
similar only by sharing [significant] part of the user-level API? One
is discontinued. I'd guess, because the CE kernel was designed for a
single core and nowadays even on the low end multiple cores are common.
Discontinued, but still available.
Another one, based on NT family of kernels, is doing similarly to how
it did for the last couple of decades.

The major blow that could kill it in the future is a relatively recent
requirement that all 64-bit kernel drivers should be not just
crypto-signed (that was always a case) but signed by Microsoft's test
lab, which means that it's not just costs money, but also requires
bureaucratic procedures.
But that's what could kill it in the future rather than already
happening.

Re: What I've learned in comp.lang.c

<uq5jgu$2n0g2$1@dont-email.me>

  copy mid

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

  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: david.br...@hesbynett.no (David Brown)
Newsgroups: comp.lang.c
Subject: Re: What I've learned in comp.lang.c
Date: Fri, 9 Feb 2024 17:22:53 +0100
Organization: A noiseless patient Spider
Lines: 84
Message-ID: <uq5jgu$2n0g2$1@dont-email.me>
References: <uppcfk$3ui34$1@dont-email.me> <20240204191630.146@kylheku.com>
<20240205190209.00002c1f@yahoo.com> <uprqu3$gcqc$4@dont-email.me>
<upsrrq$qb8m$2@dont-email.me> <upuf3o$13gvv$2@dont-email.me>
<upvd2v$1bcum$2@dont-email.me> <daOwN.308693$7sbb.250916@fx16.iad>
<uq0qdg$1j1v4$4@dont-email.me> <20240207233706.000068fd@yahoo.com>
<uq217c$1sep3$1@dont-email.me> <20240209155524.00006022@yahoo.com>
<uq5crl$2lqj3$1@dont-email.me> <20240209165245.00007533@yahoo.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Fri, 9 Feb 2024 16:22:54 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="9c8bd9f8f89cf9a03af351ae8d81a71b";
logging-data="2851330"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18yAlGdOr/wOFh0CLxIKVPw4QNp71OJdoE="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.11.0
Cancel-Lock: sha1:OQ9w8YbcFmro/N24PnUTuuARUFY=
Content-Language: en-GB
In-Reply-To: <20240209165245.00007533@yahoo.com>
 by: David Brown - Fri, 9 Feb 2024 16:22 UTC

On 09/02/2024 15:52, Michael S wrote:
> On Fri, 9 Feb 2024 15:29:09 +0100
> David Brown <david.brown@hesbynett.no> wrote:
>
>> On 09/02/2024 14:55, Michael S wrote:
>>> On Thu, 8 Feb 2024 08:52:12 +0100
>>> David Brown <david.brown@hesbynett.no> wrote:
>>>>
>>>> You are just a rounding error :-)
>>>>
>>>> But it is interesting to hear of exceptions to the general trend.
>>>>
>>>
>>> That is one option.
>>> Another one is you pulling your statistics out of one of your major
>>> anatomical features.
>>>
>>
>> You do know that embedded Windows - "WinCE" - had its last version
>> release in 2013, and ended extended support last year? It's share of
>> the market (whatever market you choose) was never particularly
>> significant despite significant effort from MS, which is why they
>> dropped it.
>>
>> Clearly my comment about "two or three unfortunate people" was not
>> meant as a serious statistic.
>>
>> And of course people also make systems that can be classified as
>> "embedded", but with a desktop (or even server) version of Windows.
>>
>
> Do you know that there were two families of Windows OSes intended for
> use in embedded devices that used completely different kernels and were
> similar only by sharing [significant] part of the user-level API? One
> is discontinued. I'd guess, because the CE kernel was designed for a
> single core and nowadays even on the low end multiple cores are common.
> Discontinued, but still available.
> Another one, based on NT family of kernels, is doing similarly to how
> it did for the last couple of decades.
>

That's the line that started as "Windows NT 4.0 Embedded", and is now at
"Windows 10 IoT", with a new naming convention every couple of years
along the way? AFAIK - and I admit I don't know a lot here, so correct
me if I'm wrong - these are just normal Windows versions with a few
restrictions and a licensing model better suited to things like kiosks
and point-of-sale systems. I count these as desktop versions of
Windows, not an embedded OS, as they generally run on what is basically
a normal (if small) PC.

But if you count these sorts of things as "embedded", then I agree there
are a large number of embedded Windows systems around.

The market share in this area is, however, dropping significantly as it
is taken by Linux - especially in the guise of Android. (And again, the
total unit numbers are negligible compared to the unit numbers for
microcontroller systems.)

> The major blow that could kill it in the future is a relatively recent
> requirement that all 64-bit kernel drivers should be not just
> crypto-signed (that was always a case) but signed by Microsoft's test
> lab, which means that it's not just costs money, but also requires
> bureaucratic procedures.

It's that kind of thing that makes Linux /so/ much easier for
developers. If MS testing could be viewed as an indication of quality,
reliability, compatibility or security (as in the Apple world), then
there would be value in it for some people.

> But that's what could kill it in the future rather than already
> happening.
>

Cryto-signing and the work and effort involved even for simple drivers
has already pushed smaller customers away. It's one thing to pay the
time, money and developer resources for this nonsense when you are
shipping cash registers to Walmart's, but it's another matter if you are
producing mere hundreds or even a few thousands of systems. My company
is primarily an electronics manufacturing company for third-party
designs (as well as development services), and I can only ever remember
one customer being interested in any sort of embedded Windows system.
But we have lots of them using embedded Linux.

Re: What I've learned in comp.lang.c

<86il2x5k1s.fsf@linuxsc.com>

  copy mid

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

  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: tr.17...@z991.linuxsc.com (Tim Rentsch)
Newsgroups: comp.lang.c
Subject: Re: What I've learned in comp.lang.c
Date: Fri, 09 Feb 2024 14:50:39 -0800
Organization: A noiseless patient Spider
Lines: 168
Message-ID: <86il2x5k1s.fsf@linuxsc.com>
References: <uppcfk$3ui34$1@dont-email.me> <20240204191630.146@kylheku.com> <20240205183233.00000632@yahoo.com> <uprec5$eb3i$2@dont-email.me> <20240205124031.788@kylheku.com> <upsrh5$qb8m$1@dont-email.me> <upuf0v$13gvv$1@dont-email.me> <upvcv5$1bcum$1@dont-email.me> <upvgp1$1bs8q$1@dont-email.me> <87y1bwtuss.fsf@bsb.me.uk> <upvo4c$1d64i$1@dont-email.me> <87h6ikthg4.fsf@bsb.me.uk> <uq0gpd$1hiun$1@dont-email.me> <87il2zrxtn.fsf@bsb.me.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Injection-Info: dont-email.me; posting-host="5ded87dca6ebfa6cbf5e6333b6958a23";
logging-data="2984195"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+3dQz/Hj1PAIArANhAeMlmFCfZlw5FLlg="
User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux)
Cancel-Lock: sha1:uv6X6nutWGNdBw6i9ExKmQc0We8=
sha1:SZVq1yxFSvGOWBeOhCF1y+wABNo=
 by: Tim Rentsch - Fri, 9 Feb 2024 22:50 UTC

Ben Bacarisse <ben.usenet@bsb.me.uk> writes:

[some previous material removed or summarized]

> bart <bc@freeuk.com> writes:
>
>> On 07/02/2024 15:36, Ben Bacarisse wrote:
>>
>>> bart <bc@freeuk.com> writes:
>>>
>>>> On 07/02/2024 10:47, Ben Bacarisse wrote:
>>>>
>>>>>> [on choosing between declaring local variables always at the
>>>>>> start of a function, before any statements, or declaring
>>>>>> local variables throughout the body of a function, usually
>>>>>> with an initializing declaration at the point of first use;
>>>>>> an all-at-the-top style gives a single place to look for
>>>>>> all locals used in the function body]
>>>>>
>>>>> You should not need an inventory of what's being operated on.
>>>>> Any function so complex that I can't tell immediately what
>>>>> declaration corresponds to which name needs to be re-written.
>>>>
>>>> But if you keep functions small, eg. the whole body is visible
>>>> at the same time, then there is less need for declarations to
>>>> clutter up the code. They can go at the top, so that you can
>>>> literally can just glance there.
>>>
>>> Declarations don't clutter up the code, just as the code does not
>>> clutter up the declarations. That's just your own spin on the
>>> matter. They are both important parts of a C program.
>>
>> That sounds like your opinion against mine. It's nothing to do
>> with spin, whatever that means.
>
> It's spin, because the term is emotive. "Cluttering up" is how
> you feel about it. The phrase is just a mildly pejorative one
> about appearances. There's no substance there. To make a
> technical point you would have to explain how, for example,
>
> struct item *items;
> ...
> n_elements = get_number_of_items(...);
> items = malloc(n_elements * sizeof *items);
> ...
>
> is technically better than
>
> n_elements = get_number_of_items(...);
> struct item *items = malloc(n_elements * sizeof *items);
>
> I've explained (more than once) how I find reasoning about
> the direct initialise at first use style easier with fewer
> distractions.

I would like to offer another perspective here. First let me state
some personal preferences without giving any whys or wherefores.

I mostly put declarations at the start of a compound statement,
before any statements in the same block. I'm not absolutely opposed
to writing declarations "between statements", but in most cases I
don't if there is a reasonable way to avoid it.

I usually declare variables in the most-nested compound statement
that works. I'm not entirely rigorous about it.

In most cases I write initializing declarations for variables that
are not subsequently modified. For other variables it varies (no
pun intended), but typically such variables are declared without an
initializer.

When writing for() statements, sometimes I use the declaring form
for the first clause, but most of the time I don't.

I am strongly biased in favor of keeping function bodies short. To
put some numbers on that, 25 lines for almost all functions, 40
lines for longer functions, and 60 lines for all functions (with the
qualifier that longer than 60 lines is not categorically excluded,
but there needs to be a compelling argument that observing the
60-line bound is not feasible). Those numbers are of course meant
as upper bounds, and not as being typical or representative.

I strongly prefer code that looks clean. The word "clean" here
means lots of different things, but "easy on the eyes" might be a
good capsule summary. That said, the measure is not purely visual:
it's also important that the code be semantically clean, but that
idea is even harder to define than visual appearance.

(Amusing aside: as it happens I recently wrote a function whose
body consisted of 25 initializing declarations, followed by four
one-line imperative statements and then a single simple return
statement.)

Now here are some explanations.

Short functions are easier to understand than long functions.
Conversely, functions that are, say, longer than a single page are
very likely to be more difficult to comprehend. A corollary to this
relationship is that long functions need to be cleaner than short
functions: a short function body can bend or break style rules
without losing too much understandability, but long function bodies
tend to become harder to understand much faster if they aren't
fastidious in hewing to good style aesthetics.

In choosing where to put declarations, I find that I have a
different mindset when reading declarations than when reading
executable statements. (Yes I know initializing declarations are
executable but I think everyone knows what I mean.) Switching
between those two mindsets, even though it may be subconscious,
requires some amount of mental effort, so it's mentally easier (for
me anyway) when reading code to keep declarations and statements
separate. I often will put in a blank line after the declarations
and before the statements, especially in the outermost block of a
function. The blank line both makes it easier to find the dividing
point between the two regimes and also gives a kind of mental cue to
(maybe make it easier to) switch from one mindset to the other.

Another concern is uniformity. Putting declarations at top of block
always works; trying to declare at the point of first use sometimes
doesn't. Similarly using the expression form of for() always works,
but trying to use declaration-style for()s sometimes doesn't. Being
completely uniform is not an absolute requirement, or even a super
high priority, but it does exert a slight pressure in the direction
of choosing top-of-block declarations rather than being mixed in
with executable statements.

I should say explicitly that the above statements, and indeed I
think all the statements in this posting, are relating only my own
reactions and assessments, and for sure other people may have
different reactions and assessments, and there is no contradiction
in that. Each person has his or her own central nervous system, and
how different people react can vary a lot from person to person. An
example I like to give about myself is I am partially colorblind, so
things like putting keywords in a different color are in many cases
worse than useless for me, no matter how helpful they may be for
other people.

Now I would like to offer some views on the earlier discussions.

First, I don't think what bart is advocating is completely without
merit. His position is more strict than my own, but certainly there
is some overlap.

Second, I think there is also some merit in the declare-at-first-use
style, especially when such a declaration includes initialization
and the variable being declared is never changed after the
declaration. I don't use this style all the time but there are
instances where it clearly does better than the alternatives.

Third, what I think is the key difference between my choices and the
other styles debated is that, at least in this domain, my approach
is less dogmatic and more pragmatic. Along this particular axis
flexibility is key. (Having said that, I should add that I cannot
envision ever completely abandoning initializing-declarations.)

Fourth, I would not describe the notion that "declarations clutter
up [non-declaration statements]" as spin. Don't get me wrong, there
are plenty of things that certain people say that I /do/ think of as
spin, but in my view this isn't one of them. Also let me add that I
share your frustration that some people don't make more of an effort
to express themselves in more objective ways. In this case though I
think what is being voiced is a good faith effort to express a
personal reaction and not a disingenuous and artificially negative
statement made purely to rile people up (which I guess is my own
rough translation of the word "spin").

Wwll, I guess that's all. My thanks to everyone for their
attention. I hope y'all have gotten some value from my musings.

Re: What I've learned in comp.lang.c

<uq7803$32qpj$1@dont-email.me>

  copy mid

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

  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: What I've learned in comp.lang.c
Date: Sat, 10 Feb 2024 07:18:27 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 7
Message-ID: <uq7803$32qpj$1@dont-email.me>
References: <uppcfk$3ui34$1@dont-email.me> <20240204191630.146@kylheku.com>
<20240205190209.00002c1f@yahoo.com> <uprqu3$gcqc$4@dont-email.me>
<upsrrq$qb8m$2@dont-email.me> <upuf3o$13gvv$2@dont-email.me>
<upvd2v$1bcum$2@dont-email.me> <daOwN.308693$7sbb.250916@fx16.iad>
<uq0qdg$1j1v4$4@dont-email.me> <20240207233706.000068fd@yahoo.com>
<uq217c$1sep3$1@dont-email.me> <20240209155524.00006022@yahoo.com>
<uq5crl$2lqj3$1@dont-email.me> <20240209165245.00007533@yahoo.com>
<uq5jgu$2n0g2$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Sat, 10 Feb 2024 07:18:27 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="cb0aecca639ac885e888a888c6c2d7ce";
logging-data="3238707"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18U7P/lVBVMsy7Ynly6kQdS"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:ON6Z8SmpNsal5odlLbGE4+5yIFE=
 by: Lawrence D'Oliv - Sat, 10 Feb 2024 07:18 UTC

On Fri, 9 Feb 2024 17:22:53 +0100, David Brown wrote:

> But we have lots of them using embedded Linux.

What sort of CPUs, out of interest? Presumably x86/x86-64, ARM ... maybe
even RISC-V by now? Anything else (e.g. Motorola ColdFire)? Any feel for
relative popularity?

Re: What I've learned in comp.lang.c

<uq8783$37s7s$3@dont-email.me>

  copy mid

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

  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: david.br...@hesbynett.no (David Brown)
Newsgroups: comp.lang.c
Subject: Re: What I've learned in comp.lang.c
Date: Sat, 10 Feb 2024 17:11:47 +0100
Organization: A noiseless patient Spider
Lines: 18
Message-ID: <uq8783$37s7s$3@dont-email.me>
References: <uppcfk$3ui34$1@dont-email.me> <20240204191630.146@kylheku.com>
<20240205190209.00002c1f@yahoo.com> <uprqu3$gcqc$4@dont-email.me>
<upsrrq$qb8m$2@dont-email.me> <upuf3o$13gvv$2@dont-email.me>
<upvd2v$1bcum$2@dont-email.me> <daOwN.308693$7sbb.250916@fx16.iad>
<uq0qdg$1j1v4$4@dont-email.me> <20240207233706.000068fd@yahoo.com>
<uq217c$1sep3$1@dont-email.me> <20240209155524.00006022@yahoo.com>
<uq5crl$2lqj3$1@dont-email.me> <20240209165245.00007533@yahoo.com>
<uq5jgu$2n0g2$1@dont-email.me> <uq7803$32qpj$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 10 Feb 2024 16:11:47 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="94c27d23ea8de2abb521791d5d2342a2";
logging-data="3404028"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18SmD0uHhpv5knFzlis/tPPslq6o4zGHg4="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:UKb1MuHyHt6qu+k+zstQ6MHbSZI=
Content-Language: en-GB
In-Reply-To: <uq7803$32qpj$1@dont-email.me>
 by: David Brown - Sat, 10 Feb 2024 16:11 UTC

On 10/02/2024 08:18, Lawrence D'Oliveiro wrote:
> On Fri, 9 Feb 2024 17:22:53 +0100, David Brown wrote:
>
>> But we have lots of them using embedded Linux.
>
> What sort of CPUs, out of interest? Presumably x86/x86-64, ARM ... maybe
> even RISC-V by now? Anything else (e.g. Motorola ColdFire)? Any feel for
> relative popularity?

Almost all ARM, as far as I know, with a couple of x86 systems. But I
don't know the details of everything we make as pure production
contracts - it's only if the developers are needed to help with
problems, suggest improvements for the customers, or work with test
setups that we get involved.

Long ago, I worked a little with both MIPS and Coldfire embedded Linux
systems, but those are pretty much gone from the market now.

Re: What I've learned in comp.lang.c

<uq8pg6$3padl$9@dont-email.me>

  copy mid

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

  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: What I've learned in comp.lang.c
Date: Sat, 10 Feb 2024 21:23:18 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 11
Message-ID: <uq8pg6$3padl$9@dont-email.me>
References: <uppcfk$3ui34$1@dont-email.me> <20240204191630.146@kylheku.com>
<20240205190209.00002c1f@yahoo.com> <uprqu3$gcqc$4@dont-email.me>
<upsrrq$qb8m$2@dont-email.me> <upuf3o$13gvv$2@dont-email.me>
<upvd2v$1bcum$2@dont-email.me> <daOwN.308693$7sbb.250916@fx16.iad>
<uq0qdg$1j1v4$4@dont-email.me> <20240207233706.000068fd@yahoo.com>
<uq217c$1sep3$1@dont-email.me> <20240209155524.00006022@yahoo.com>
<uq5crl$2lqj3$1@dont-email.me> <20240209165245.00007533@yahoo.com>
<uq5jgu$2n0g2$1@dont-email.me> <uq7803$32qpj$1@dont-email.me>
<uq8783$37s7s$3@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Sat, 10 Feb 2024 21:23:18 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="cb0aecca639ac885e888a888c6c2d7ce";
logging-data="3975605"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18EPRbL2sYMkp9GKK5fXo1Z"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:VqgRaAjZ5/IztMhHXoKYJqksnS0=
 by: Lawrence D'Oliv - Sat, 10 Feb 2024 21:23 UTC

On Sat, 10 Feb 2024 17:11:47 +0100, David Brown wrote:

> Long ago, I worked a little with both MIPS and Coldfire embedded Linux
> systems, but those are pretty much gone from the market now.

MIPS gone as well? At one point I heard they were accounting for something
like 840 million chips per year. They had a particular niche in wireless
routers.

The company that used to own what there was of the MIPS IP is now called
Imagination Tech, and has gone all-in on RISC-V.

Re: What I've learned in comp.lang.c

<86o7cn4kai.fsf@linuxsc.com>

  copy mid

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

  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: tr.17...@z991.linuxsc.com (Tim Rentsch)
Newsgroups: comp.lang.c
Subject: Re: What I've learned in comp.lang.c
Date: Sat, 10 Feb 2024 21:55:17 -0800
Organization: A noiseless patient Spider
Lines: 21
Message-ID: <86o7cn4kai.fsf@linuxsc.com>
References: <uppcfk$3ui34$1@dont-email.me> <20240204191630.146@kylheku.com> <20240205183233.00000632@yahoo.com> <uprec5$eb3i$2@dont-email.me> <20240205124031.788@kylheku.com> <upsrh5$qb8m$1@dont-email.me> <upuf0v$13gvv$1@dont-email.me> <upvcv5$1bcum$1@dont-email.me> <upvgp1$1bs8q$1@dont-email.me> <87y1bwtuss.fsf@bsb.me.uk> <upvo4c$1d64i$1@dont-email.me> <87h6ikthg4.fsf@bsb.me.uk> <uq0gpd$1hiun$1@dont-email.me> <uq0pmc$1j1v4$2@dont-email.me> <uq11j7$1kemh$1@dont-email.me> <20240207164047.820@kylheku.com> <uq1d3t$1m1tc$1@dont-email.me> <867cje7ber.fsf@linuxsc.com> <uq3so5$28lqh$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Injection-Info: dont-email.me; posting-host="1ce827b2c1f707254225ffc493068bf5";
logging-data="621448"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+4VDLHdZnH1+7RPyvXOP8nuMeL1UaT/xc="
User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux)
Cancel-Lock: sha1:d3fFe492Z8cVxYsQXvQVwmg+mbA=
sha1:oAYnsN/JLnmBTZ77KfBtXew6RAE=
 by: Tim Rentsch - Sun, 11 Feb 2024 05:55 UTC

bart <bc@freeuk.com> writes:

> On 09/02/2024 00:02, Tim Rentsch wrote:
>
>> bart <bc@freeuk.com> writes:
>>
>>> You're never in a million years going to admit that my language
>>> has some good points are you?
>>
>> Where can I get a user manual for it?
>
> Why?

Because having at least some kind of user manual is a
sine qua non of any programming language that is meant
to be taken seriously. Any language that doesn't is
nothing more than a toy or pet project.

Furthermore, you may expect that no one will shower
your language with praise if all they ever hear is
you bragging about it.

Re: What I've learned in comp.lang.c

<uqagfu$v4d8$9@dont-email.me>

  copy mid

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

  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: david.br...@hesbynett.no (David Brown)
Newsgroups: comp.lang.c
Subject: Re: What I've learned in comp.lang.c
Date: Sun, 11 Feb 2024 14:01:50 +0100
Organization: A noiseless patient Spider
Lines: 26
Message-ID: <uqagfu$v4d8$9@dont-email.me>
References: <uppcfk$3ui34$1@dont-email.me> <20240204191630.146@kylheku.com>
<20240205190209.00002c1f@yahoo.com> <uprqu3$gcqc$4@dont-email.me>
<upsrrq$qb8m$2@dont-email.me> <upuf3o$13gvv$2@dont-email.me>
<upvd2v$1bcum$2@dont-email.me> <daOwN.308693$7sbb.250916@fx16.iad>
<uq0qdg$1j1v4$4@dont-email.me> <20240207233706.000068fd@yahoo.com>
<uq217c$1sep3$1@dont-email.me> <20240209155524.00006022@yahoo.com>
<uq5crl$2lqj3$1@dont-email.me> <20240209165245.00007533@yahoo.com>
<uq5jgu$2n0g2$1@dont-email.me> <uq7803$32qpj$1@dont-email.me>
<uq8783$37s7s$3@dont-email.me> <uq8pg6$3padl$9@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 11 Feb 2024 13:01:50 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="5b5b4537e3bb9e65084aa8e461cd54f8";
logging-data="1020328"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/oaMe7KvLzqnzqRNRO8A8n9ma+cAcCB/A="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:PZfbRzMBXGSyXXfdakSAMdUZsAM=
In-Reply-To: <uq8pg6$3padl$9@dont-email.me>
Content-Language: en-GB
 by: David Brown - Sun, 11 Feb 2024 13:01 UTC

On 10/02/2024 22:23, Lawrence D'Oliveiro wrote:
> On Sat, 10 Feb 2024 17:11:47 +0100, David Brown wrote:
>
>> Long ago, I worked a little with both MIPS and Coldfire embedded Linux
>> systems, but those are pretty much gone from the market now.
>
> MIPS gone as well? At one point I heard they were accounting for something
> like 840 million chips per year. They had a particular niche in wireless
> routers.
>

Emphasis on /had/. MIPS used to be the most common architecture in
routers of all kinds, but they have been pushed out by ARM. You see
them only in legacy designs. (Of course, many routers, switches, and
the like are still made with them - there's no need to change a hardware
design that works perfectly well for the task. But you won't find many
/new/ chips with MIPS cores.)

> The company that used to own what there was of the MIPS IP is now called
> Imagination Tech, and has gone all-in on RISC-V.

RISC-V has a number of technical and economic advantages over the
incumbent, ARM. How much of the market it will take remains to be seen.
(I personally hope it gains a lot - the x86/ARM duopoly is not good
for the market.)

Pages:123456
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor