Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Frankly, Scarlett, I don't have a fix. -- Rhett Buggler


devel / comp.lang.c / Re: C isn't a programming language

SubjectAuthor
* C isn't a programming languageRichard Harnden
+* Re: C isn't a programming languageScott Lurndal
|+* Re: C isn't a programming languageGuillaume
||+* Re: C isn't a programming languageKeith Thompson
|||+* Re: C isn't a programming languageBGB
||||`* Re: C isn't a programming languageKeith Thompson
|||| +- Re: C isn't a programming languageBGB
|||| `- Re: C isn't a programming languageGuillaume
|||`* Re: C isn't a programming languageantispam
||| +* Re: C isn't a programming languageGuillaume
||| |`* Re: C isn't a programming languageantispam
||| | `* Re: C isn't a programming languageGuillaume
||| |  +- Re: C isn't a programming languageStefan Ram
||| |  +* Re: C isn't a programming languageantispam
||| |  |`- Re: C isn't a programming languageKaz Kylheku
||| |  `- Re: C isn't a programming languageTim Rentsch
||| `- Re: C isn't a programming languageTim Rentsch
||+- Re: C isn't a programming languageKaz Kylheku
||`* Re: C isn't a programming languageBart
|| `* Re: C isn't a programming languageManfred
||  +* Re: C isn't a programming languageBonita Montero
||  |`* Re: C isn't a programming languageMalcolm McLean
||  | +- Re: C isn't a programming languageBen Bacarisse
||  | `- Re: C isn't a programming languageBonita Montero
||  `* Re: C isn't a programming languageBart
||   +* Re: C isn't a programming languageDavid Brown
||   |`* Re: C isn't a programming languageBart
||   | `- Re: C isn't a programming languageDavid Brown
||   `* Re: C isn't a programming languageManfred
||    `* Re: C isn't a programming languageBart
||     +- Re: C isn't a programming languageBart
||     +* Re: C isn't a programming languageBen Bacarisse
||     |`* Re: C isn't a programming languageManfred
||     | `* Re: C isn't a programming languageBen Bacarisse
||     |  `- Re: C isn't a programming languageManfred
||     `* Re: C isn't a programming languageDavid Brown
||      `* Re: C isn't a programming languageKaz Kylheku
||       `* Re: C isn't a programming languageDavid Brown
||        `* Re: C isn't a programming languageBen Bacarisse
||         +* Re: C isn't a programming languageDavid Brown
||         |`- Re: C isn't a programming languageMalcolm McLean
||         `- Re: C isn't a programming languageKaz Kylheku
|+- Re: C isn't a programming languageKeith Thompson
|+- Re: C isn't a programming languagerek2 hispagatos
|`- Re: C isn't a programming languageantispam
+* Re: C isn't a programming languageBen Bacarisse
|`* Re: C isn't a programming languageBart
| +* Re: C isn't a programming languageJack Noddy
| |`- Re: C isn't a programming languageBart
| `* Re: C isn't a programming languageBen Bacarisse
|  `* Re: C isn't a programming languageGuillaume
|   `- Re: C isn't a programming languageBart
+- Re: C isn't a programming languageIan Pilcher
+* Re: C isn't a programming languagerek2 hispagatos
|`- Re: C isn't a programming languageBonita Montero
+* Re: C isn't a programming languageStefan Ram
|+- Re: C isn't a programming languageBen Bacarisse
|`* Re: C isn't a programming languageBonita Montero
| +* Re: C isn't a programming languageLew Pitcher
| |+* Re: C isn't a programming languageBonita Montero
| ||`* Re: C isn't a programming languageLew Pitcher
| || +* Re: C isn't a programming languageStefan Ram
| || |`- Re: C isn't a programming languageScott Lurndal
| || +- Re: C isn't a programming languageStefan Ram
| || `- Re: C isn't a programming languageBonita Montero
| |+- Re: C isn't a programming languageManfred
| |`* Re: C isn't a programming languageBen Bacarisse
| | `- Re: C isn't a programming languageScott Lurndal
| `- Re: C isn't a programming languagerek2 hispagatos
+- Re: C isn't a programming languageStefan Ram
+- Re: C isn't a programming languageJorgen Grahn
`- Re: C isn't a programming languagefir

Pages:123
Re: C isn't a programming language

<t1leii$nje$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: bc...@freeuk.com (Bart)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Fri, 25 Mar 2022 22:09:23 +0000
Organization: A noiseless patient Spider
Lines: 26
Message-ID: <t1leii$nje$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me> <875yo3f9ek.fsf@bsb.me.uk>
<t1iq1k$nip$1@dont-email.me> <87o81vdk1f.fsf@bsb.me.uk>
<t1lc81$18l5$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Fri, 25 Mar 2022 22:09:22 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="540970c282f16d13e2b8533c21588e98";
logging-data="24174"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18A+2OXKZU8ve4HOcuNozecgnsjAuXQW0o="
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:C9ef9crUjGdsJO3n4butjPRwGdM=
In-Reply-To: <t1lc81$18l5$1@gioia.aioe.org>
 by: Bart - Fri, 25 Mar 2022 22:09 UTC

On 25/03/2022 21:29, Guillaume wrote:
> Le 25/03/2022 à 00:10, Ben Bacarisse a écrit :
>>> Here's another recent article on the subject written more
>>> passionately, which I suggest you don't click on either:
>>>
>>>    https://gankra.github.io/blah/c-isnt-a-language/
>>
>> Thanks for the advice -- I have followed it to the letter.
>
> You were well inspired. I had a look and it's even worse than the other
> article. It just looks like a kiddo throwing a tantrum while desperately
> trying to sound smart.

I suspect you guys just don't get the frustrations of not being or
wanting to be a C programmer, but still getting side-tracked into this
C-based API stuff whenever you want to talk to any OS, library or other
language outside the one you're using.

Either by using C, or mainstream languages where those details (like
creating portable, stable bindings) are taken care of for you, or simply
not exposed.

Otherwise you might well be writing colourful articles like that too.

Re: C isn't a programming language

<t1mjng$c8q$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: Bonita.M...@gmail.com (Bonita Montero)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 09:43:29 +0100
Organization: A noiseless patient Spider
Lines: 15
Message-ID: <t1mjng$c8q$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me> <7m0%J.469671$oF2.277206@fx10.iad>
<t1ibau$mtp$1@gioia.aioe.org> <t1is1k$74g$1@dont-email.me>
<t1l10h$1ts6$1@gioia.aioe.org> <t1l14j$7nt$1@dont-email.me>
<3e4c00c3-6aaf-42a6-a269-525c1e9f27e0n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 26 Mar 2022 08:43:28 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="a550cff5da757da1df249f5750959578";
logging-data="12570"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18XGz/toNEqKRIvaHMPKZRhxD/MYrbae+w="
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:0dw1yKkstA90rv4UJjdnm8InaD8=
In-Reply-To: <3e4c00c3-6aaf-42a6-a269-525c1e9f27e0n@googlegroups.com>
Content-Language: de-DE
 by: Bonita Montero - Sat, 26 Mar 2022 08:43 UTC

Am 25.03.2022 um 21:19 schrieb Malcolm McLean:
> On Friday, 25 March 2022 at 18:20:16 UTC, Bonita Montero wrote:
>>> First, look at C's flexibility with pointers, which is one of the strong
>>> suits of C (in fact, it's a must have, something that makes C really
>>> good for some kind of programming):
>>> C allows you to declare a pointer to pointer to pointer to function
>>> returning a pointer to function returning a pointer to int.
>> And that's sufficient for you for assessing a language as powerful ???
>> C is for sure not a powerful language but is very rudiemental.
>>
> Indirection is one of the most powerful concepts in programming.

Lowlevel-indirection doesn't make a language powerful.
C belongs to the museum.

Re: C isn't a programming language

<t1mq4a$pqh$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: david.br...@hesbynett.no (David Brown)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 11:32:42 +0100
Organization: A noiseless patient Spider
Lines: 32
Message-ID: <t1mq4a$pqh$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me> <7m0%J.469671$oF2.277206@fx10.iad>
<t1ibau$mtp$1@gioia.aioe.org> <t1is1k$74g$1@dont-email.me>
<t1l10h$1ts6$1@gioia.aioe.org> <t1l4f7$4tb$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 26 Mar 2022 10:32:42 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="74118e5496784f77910156a27ffe2e3d";
logging-data="26449"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+8Ufu3KiLE4U6yfPSyd0JRlfglW+W/Dkg="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:xQeeTay4LC1Lkn4XUx7JaRGhAOU=
In-Reply-To: <t1l4f7$4tb$1@dont-email.me>
Content-Language: en-GB
 by: David Brown - Sat, 26 Mar 2022 10:32 UTC

On 25/03/2022 20:16, Bart wrote:

> Typedefs should be used when they make sense for the project. If used to
> just to mitigate the awfulness of the type syntax, then something is wrong.
>
> You don't want to do so just to ensure you are declaring the correct
> type here:
>

Why not?

It is very common in programming languages that the basic language
provides some fundamental low-level features, and ways to build on top
of that. Having a logically simple and consistent low-level type system
is a good idea, but it can sometimes result in code that is hard to read
(that applies whether you have lots of asterisk symbols or lots of "ref"
keywords). Typedef lets you give names to the types, resulting in
clearer and more flexible code.

Typedef's are nothing more than an application of the most basic
principle of programming - divide your task into parts and give the
parts names, so that you can concentrate on the part of the code you are
interested in at the time, and so that you can reuse the parts. It's no
different from functions, or structs, or compilation units, or any other
named part of code.

Some languages are truly painful to work with at their fundamental
level, but far nicer at a higher level defined on top of that. If
you've ever looked at low-level "raw" TeX code, it is looks like a
contender for Wikipedia's page on esoteric programming languages. LaTeX
is vastly more friendly - yet it is built on TeX through nothing more
than macros.

Re: C isn't a programming language

<t1mqe9$rb9$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: Bonita.M...@gmail.com (Bonita Montero)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 11:38:01 +0100
Organization: A noiseless patient Spider
Lines: 7
Message-ID: <t1mqe9$rb9$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me> <t1l53j$8i8$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 26 Mar 2022 10:38:01 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="a550cff5da757da1df249f5750959578";
logging-data="28009"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+ziLj4ldo5/Rtwk0vZICmSiUB+xs3fszA="
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:7Ms8X/3Ht0TNNNoJkNYd9Z6BPoE=
In-Reply-To: <t1l53j$8i8$1@dont-email.me>
Content-Language: de-DE
 by: Bonita Montero - Sat, 26 Mar 2022 10:38 UTC

Am 25.03.2022 um 20:27 schrieb rek2 hispagatos:

> LOL, this is all FUD people is been attacking C since I was born

People attacking C aren't afraid of sth. but just have
realized that C is a poor language.

Re: C isn't a programming language

<t1mtbb$1jvr$1@gioia.aioe.org>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!aioe.org!NZ87pNe1TKxNDknVl4tZhw.user.46.165.242.91.POSTED!not-for-mail
From: antis...@math.uni.wroc.pl
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 11:27:39 -0000 (UTC)
Organization: Aioe.org NNTP Server
Message-ID: <t1mtbb$1jvr$1@gioia.aioe.org>
References: <t1i34t$m94$1@dont-email.me> <7m0%J.469671$oF2.277206@fx10.iad>
Injection-Info: gioia.aioe.org; logging-data="53243"; posting-host="NZ87pNe1TKxNDknVl4tZhw.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: tin/2.4.5-20201224 ("Glen Albyn") (Linux/5.10.0-9-amd64 (x86_64))
X-Notice: Filtered by postfilter v. 0.9.2
Cancel-Lock: sha1:WdNn+PciPKThywi3REDRMkncgHE=
 by: antis...@math.uni.wroc.pl - Sat, 26 Mar 2022 11:27 UTC

Scott Lurndal <scott@slp53.sl.home> wrote:
> Richard Harnden <richard.nospam@gmail.com> writes:
> >"C: Everyone's favourite programming language isn't a programming language"
> >
> >Erm ... <https://www.theregister.com/2022/03/23/c_not_a_language>
>
> The article doesn't make a whole lot of sense - it's basically just
> bitching because swift and rust can't do everything that C can.

Well, title has little sense. Rather it should be "C is more than
a programming language and it should not". AFAICS the article
takes a few cheap shot at C like taking about 'intmax_t'. IMO
concept of 'intmax_t' is brain-damaged so he has _some_ point.

Main point is that currently C is used to define system and
interlanguage interfaces. This IMO is problematic. But this
is not a fault of C. And it is hard to rectify: due to requirement
of binary compatiblity once introduced system interfaces tend
to stay semi-frozen, main change it gluing new stuff but
keeping rest the same. And due to requirement of source portabilty
new system tend to copy main aspects of older interfaces.

IMHO interface problem has little to do with programming
languages. What is needed is new format for binaries
and new linkers. This format should be abstractly typed
and have namespaces. AFAICS C would easily fit in such
model (but use only tiny part of available capabilities).
The problem is with other languages. More precisely, by
keeping types abstract any language in isolation could
do whatever it wants. But to cooperate nicely they
have to agree on meaning of low level stuff. Currently
C implementation works as a dictator, mostly because
other folks can not agree what to do...

--
Waldek Hebisch

Re: C isn't a programming language

<t1mtp0$1pv4$1@gioia.aioe.org>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!aioe.org!NZ87pNe1TKxNDknVl4tZhw.user.46.165.242.91.POSTED!not-for-mail
From: antis...@math.uni.wroc.pl
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 11:34:56 -0000 (UTC)
Organization: Aioe.org NNTP Server
Message-ID: <t1mtp0$1pv4$1@gioia.aioe.org>
References: <t1i34t$m94$1@dont-email.me> <7m0%J.469671$oF2.277206@fx10.iad> <t1ibau$mtp$1@gioia.aioe.org> <87zglfyz85.fsf@nosuchdomain.example.com>
Injection-Info: gioia.aioe.org; logging-data="59364"; posting-host="NZ87pNe1TKxNDknVl4tZhw.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: tin/2.4.5-20201224 ("Glen Albyn") (Linux/5.10.0-9-amd64 (x86_64))
X-Notice: Filtered by postfilter v. 0.9.2
Cancel-Lock: sha1:zqbQ6UwVZD2Vs5v4Q4VBMTfExMI=
 by: antis...@math.uni.wroc.pl - Sat, 26 Mar 2022 11:34 UTC

Keith Thompson <Keith.S.Thompson+u@gmail.com> wrote:
> Guillaume <message@bottle.org> writes:
> > Le 24/03/2022 ? 16:45, Scott Lurndal a ?crit?:
> >> Richard Harnden <richard.nospam@gmail.com> writes:
> >>> "C: Everyone's favourite programming language isn't a programming language"
> >>>
> >>> Erm ... <https://www.theregister.com/2022/03/23/c_not_a_language>
> >> The article doesn't make a whole lot of sense - it's basically just
> >> bitching because swift and rust can't do everything that C can.
> >
> > And you're putting it lightly.
> > Of course, first thing, without even reading it, is questioning the
> > relevance of such articles written by heavy proponents of
> > "alternative" languages. How much more biased can one be?
> >
> > Digging a bit deeper, there is nothing much to even take from this
> > short article. It's pretty shallow.
> >
> > - C is difficult to parse? C declarations are, for instance, not
> > exactly easy, but it's only very moderately difficult. You can have
> > fun with this to get an idea: https://cdecl.org/ . I has never made
> > it a problem to write a C compiler. There are more of them out there
> > than for any other language, I think. OTOH, there is, AFAIK, only one
> > implementation of Rust. Which to me is in itself a problem. I'm
> > curious to see if it ever even gets to the point of having other
> > competing implementations.
>
> It's probably referring to the typedef issue.
>
> In the absence of typedefs, type names consist of keywords and
> punctuation. A typedef (a feature that was added to the language
> after the syntax had been established) creates a type name that's an
> identifier. It's impossible to parse something that uses a typedef name
> without knowing that it's a typedef name. In effect a typedef adds a
> context-sensitive keyword to the grammar. The parser needs to query the
> symbol table.

Using symbol table is just one of possible solutions. Another
one is to note that true ambiguities are really semantic, so
parser can return tree faithful to all possible meaning. For
example, cast versus function call is semantic problem so
parser can return 'call_or_cast' and let semantic phase
to decide.

> But it's a solved problem and not that big a deal.

Yes.

--
Waldek Hebisch

Re: C isn't a programming language

<programming-language-20220326131605@ram.dialup.fu-berlin.de>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!not-for-mail
From: ram...@zedat.fu-berlin.de (Stefan Ram)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: 26 Mar 2022 12:21:36 GMT
Organization: Stefan Ram
Lines: 36
Expires: 1 Apr 2023 11:59:58 GMT
Message-ID: <programming-language-20220326131605@ram.dialup.fu-berlin.de>
References: <t1i34t$m94$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: news.uni-berlin.de ZoG9GdBDTERYjbmpSHfKsg9ajRKeyRy1YGtALucpb6atqL
X-Copyright: (C) Copyright 2022 Stefan Ram. All rights reserved.
Distribution through any means other than regular usenet
channels is forbidden. It is forbidden to publish this
article in the Web, to change URIs of this article into links,
and to transfer the body without this notice, but quotations
of parts in other Usenet posts are allowed.
X-No-Archive: Yes
Archive: no
X-No-Archive-Readme: "X-No-Archive" is set, because this prevents some
services to mirror the article in the web. But the article may
be kept on a Usenet archive server with only NNTP access.
X-No-Html: yes
Content-Language: en-US
Accept-Language: de-DE, en-US, it, fr-FR
 by: Stefan Ram - Sat, 26 Mar 2022 12:21 UTC

Maybe this is the idea of clickbait: When the title makes no
sense, it might make you more curious to understand it.

I am in conflict with people who claim that HTML is not a
programming language, so I have written a German-language
text explaining why HTML is indeed a programming language.
But for C, I'm at a loss, I have no such text prepared for C!

PS: If you accept that C is a programming language than
compare:

|This International Standard specifies [...] the semantic
|rules for interpreting C programs[ and] [...] by a conforming
|implementation of C

from a C specification with

|An HTML user agent is any device that interprets HTML documents.

from a HTML specification.

In each case, we have a text (C program, HTML document) that
is being interpreted (by a conforming implementation of C,
by an HTML user agent). The author writes the text (C program,
HTML document) so as to get certain results upon interpretation.
This is programming. International Standards do not require
Turing completenes for a programming language.

An interactive game written in HTML:

web.archive.org/web/20040428174214/http://www.geocities.com/flo_kreidler/tictactoe.html

. Disclaimer: That URI used to work, but I have not checked
it again.

Re: C isn't a programming language

<programming-language-20220326132330@ram.dialup.fu-berlin.de>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!not-for-mail
From: ram...@zedat.fu-berlin.de (Stefan Ram)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Supersedes: <programming-language-20220326131605@ram.dialup.fu-berlin.de>
Date: 26 Mar 2022 12:24:41 GMT
Organization: Stefan Ram
Lines: 39
Expires: 1 Apr 2023 11:59:58 GMT
Message-ID: <programming-language-20220326132330@ram.dialup.fu-berlin.de>
References: <t1i34t$m94$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: news.uni-berlin.de 8728LxVdJYEyzQupNA4L1wc9FXTBHKjFE8PmE9jQRXUT0x
X-Copyright: (C) Copyright 2022 Stefan Ram. All rights reserved.
Distribution through any means other than regular usenet
channels is forbidden. It is forbidden to publish this
article in the Web, to change URIs of this article into links,
and to transfer the body without this notice, but quotations
of parts in other Usenet posts are allowed.
X-No-Archive: Yes
Archive: no
X-No-Archive-Readme: "X-No-Archive" is set, because this prevents some
services to mirror the article in the web. But the article may
be kept on a Usenet archive server with only NNTP access.
X-No-Html: yes
Content-Language: en-US
Accept-Language: de-DE, en-US, it, fr-FR
 by: Stefan Ram - Sat, 26 Mar 2022 12:24 UTC

Supersedes: <programming-language-20220326131605@ram.dialup.fu-berlin.de>
["a HTML"->"an HTML","nes "->"ness "]

Maybe this is the idea of clickbait: When the title makes no
sense, it might make you more curious to understand it.

I am in conflict with people who claim that HTML is not a
programming language, so I have written a German-language
text explaining why HTML is indeed a programming language.
But for C, I'm at a loss, I have no such text prepared for C!

PS: If you accept that C is a programming language than
compare:

|This International Standard specifies [...] the semantic
|rules for interpreting C programs[ and] [...] by a conforming
|implementation of C

from a C specification with

|An HTML user agent is any device that interprets HTML documents.

from an HTML specification.

In each case, we have a text (C program, HTML document) that
is being interpreted (by a conforming implementation of C,
by an HTML user agent). The author writes the text (C program,
HTML document) so as to get certain results upon interpretation.
This is programming. International Standards do not require
Turing completeness for a programming language.

An interactive game written in HTML:

web.archive.org/web/20040428174214/http://www.geocities.com/flo_kreidler/tictactoe.html

. Disclaimer: That URI used to work, but I have not checked
it again.

Re: C isn't a programming language

<875yo06fty.fsf@bsb.me.uk>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ben.use...@bsb.me.uk (Ben Bacarisse)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 12:47:21 +0000
Organization: A noiseless patient Spider
Lines: 39
Message-ID: <875yo06fty.fsf@bsb.me.uk>
References: <t1i34t$m94$1@dont-email.me>
<programming-language-20220326131605@ram.dialup.fu-berlin.de>
Mime-Version: 1.0
Content-Type: text/plain
Injection-Info: reader02.eternal-september.org; posting-host="a8e2207611f2730082c6cd19dcc49545";
logging-data="8481"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18JOD/qHpF9y2cbvlW49s0w9aVvICsEyxc="
Cancel-Lock: sha1:x/tugpc6Jh4lVgQH1jHVJHQV088=
sha1:aQXs02kZW4yiqmN9NQC/HURG1DQ=
X-BSB-Auth: 1.addb3d115111c1e6709e.20220326124721GMT.875yo06fty.fsf@bsb.me.uk
 by: Ben Bacarisse - Sat, 26 Mar 2022 12:47 UTC

ram@zedat.fu-berlin.de (Stefan Ram) writes:

> I am in conflict with people who claim that HTML is not a
> programming language, so I have written a German-language
> text explaining why HTML is indeed a programming language.

What is the least that you would accept as a programming language? BBML
(Ben's Basic Markup Language) has only <em>emphasis</em> markup. Is
BBML a programming language? BBML2 won't even have that.

> But for C, I'm at a loss, I have no such text prepared for C!
>
> PS: If you accept that C is a programming language than
> compare:
>
> |This International Standard specifies [...] the semantic
> |rules for interpreting C programs[ and] [...] by a conforming
> |implementation of C
>
> from a C specification with
>
> |An HTML user agent is any device that interprets HTML documents.
>
> from a HTML specification.

Which one?

> In each case, we have a text (C program, HTML document) that
> is being interpreted (by a conforming implementation of C,
> by an HTML user agent). The author writes the text (C program,
> HTML document) so as to get certain results upon interpretation.
> This is programming. International Standards do not require
> Turing completenes for a programming language.

A BBML2 use agent is interpreted in order to display a document to the
reader.

--
Ben.

Re: C isn't a programming language

<t1n2ks$pe7$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: Bonita.M...@gmail.com (Bonita Montero)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 13:58:04 +0100
Organization: A noiseless patient Spider
Lines: 8
Message-ID: <t1n2ks$pe7$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me>
<programming-language-20220326131605@ram.dialup.fu-berlin.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 26 Mar 2022 12:58:04 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="a550cff5da757da1df249f5750959578";
logging-data="26055"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19dOSNJe0lw823StPPUiQ1xY9UJQopEDM0="
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:+w3G3I7bm0zeQJ4fTuDNTyzovew=
In-Reply-To: <programming-language-20220326131605@ram.dialup.fu-berlin.de>
Content-Language: de-DE
 by: Bonita Montero - Sat, 26 Mar 2022 12:58 UTC

> I am in conflict with people who claim that HTML is not a
> programming language, so I have written a German-language
> text explaining why HTML is indeed a programming language.
> But for C, I'm at a loss, I have no such text prepared for C!

A program has a control flow.
HTML is a static data-structure without a control flow.
So you can't program in HTML.

Re: C isn't a programming language

<t1n4gg$i2a$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: lew.pitc...@digitalfreehold.ca (Lew Pitcher)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 13:29:52 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 30
Message-ID: <t1n4gg$i2a$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me>
<programming-language-20220326131605@ram.dialup.fu-berlin.de>
<t1n2ks$pe7$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Sat, 26 Mar 2022 13:29:52 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="468125a3b29f3a409b2662a36952e64a";
logging-data="18506"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/b/pJbRXASZvGxLyuNtVgpBIP1jdW2EXc="
User-Agent: Pan/0.139 (Sexual Chocolate; GIT bf56508
git://git.gnome.org/pan2)
Cancel-Lock: sha1:MysMyh9d7BI/c1GamtJ8P/uqlz8=
 by: Lew Pitcher - Sat, 26 Mar 2022 13:29 UTC

On Sat, 26 Mar 2022 13:58:04 +0100, Bonita Montero wrote:

>> I am in conflict with people who claim that HTML is not a
>> programming language, so I have written a German-language
>> text explaining why HTML is indeed a programming language.
>> But for C, I'm at a loss, I have no such text prepared for C!
>
> A program has a control flow.
> HTML is a static data-structure without a control flow.
> So you can't program in HTML.

I disagree. In general, a "program" provides instructions to
automation (usually computer automation) and need not contain
control flow. HTML instructs a "web browser" (automated tool) on
how to display data. In that respect, you can write HTML, and the
resulting text will act as a "program" for a web browser. A
similar argument can be made for GCODE (the way 3D printers and
automated mills are "programmed") or even the punch cards used
to control a Jacquard loom.

However, most here (of which I am one) would probably first think
of code written in a Turing-complete language as a "program". A
Turing-complete language /does/ have control flow. If we restrict
"programming" to "writing in Turing-complete languages", then we
exclude HTML, GCODE, and a large number of other human-planned
automated process controls from "programming".

--
Lew Pitcher
"In Skills, We Trust"

Re: C isn't a programming language

<t1n4sj$rjd$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: bc...@freeuk.com (Bart)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 13:36:21 +0000
Organization: A noiseless patient Spider
Lines: 47
Message-ID: <t1n4sj$rjd$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me> <7m0%J.469671$oF2.277206@fx10.iad>
<t1ibau$mtp$1@gioia.aioe.org> <t1is1k$74g$1@dont-email.me>
<t1l10h$1ts6$1@gioia.aioe.org> <t1l4f7$4tb$1@dont-email.me>
<t1mq4a$pqh$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 26 Mar 2022 13:36:20 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="34aac532d18c0e2a55bc8091acb10070";
logging-data="28269"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX191ACcIKKnorQ2AjvPxiE8fagG5cFgmMHk="
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:/u9o34aLS/JY+63XFN50yqP7kXw=
In-Reply-To: <t1mq4a$pqh$1@dont-email.me>
 by: Bart - Sat, 26 Mar 2022 13:36 UTC

On 26/03/2022 10:32, David Brown wrote:
> On 25/03/2022 20:16, Bart wrote:
>
>> Typedefs should be used when they make sense for the project. If used to
>> just to mitigate the awfulness of the type syntax, then something is wrong.
>>
>> You don't want to do so just to ensure you are declaring the correct
>> type here:
>>
>
> Why not?
>
> It is very common in programming languages that the basic language
> provides some fundamental low-level features, and ways to build on top
> of that. Having a logically simple and consistent low-level type system
> is a good idea, but it can sometimes result in code that is hard to read
> (that applies whether you have lots of asterisk symbols or lots of "ref"
> keywords). Typedef lets you give names to the types, resulting in
> clearer and more flexible code.
>
> Typedef's are nothing more than an application of the most basic
> principle of programming - divide your task into parts and give the
> parts names, so that you can concentrate on the part of the code you are
> interested in at the time, and so that you can reuse the parts. It's no
> different from functions, or structs, or compilation units, or any other
> named part of code.
>
> Some languages are truly painful to work with at their fundamental
> level, but far nicer at a higher level defined on top of that. If
> you've ever looked at low-level "raw" TeX code, it is looks like a
> contender for Wikipedia's page on esoteric programming languages. LaTeX
> is vastly more friendly - yet it is built on TeX through nothing more
> than macros.

I haven't argued against using typedefs in a language.

Only against being obliged to use them to overcome severe shortcomings
in the way types are expressed.

That doesn't make the problems go away; it merely papers over them.

And not everyone will actually use typedefs either, then you still have
to wheel out Cdecl.

This type syntax should have been strangled at birth. They were already
existing, /linear/ ways of expressing arbitrary types when C was
devised, and which were easier to parse too.

Re: C isn't a programming language

<t1n7jl$iaj$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: Bonita.M...@gmail.com (Bonita Montero)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 15:22:45 +0100
Organization: A noiseless patient Spider
Lines: 7
Message-ID: <t1n7jl$iaj$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me>
<programming-language-20220326131605@ram.dialup.fu-berlin.de>
<t1n2ks$pe7$1@dont-email.me> <t1n4gg$i2a$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 26 Mar 2022 14:22:45 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="a550cff5da757da1df249f5750959578";
logging-data="18771"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18IfabLZdRh3zLHv18OY/ZGD/mFADd7rzw="
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:p1QkKjZlejYTCEkazvWOMTqWNZM=
In-Reply-To: <t1n4gg$i2a$1@dont-email.me>
Content-Language: de-DE
 by: Bonita Montero - Sat, 26 Mar 2022 14:22 UTC

> I disagree. In general, a "program" provides instructions to
> automation (usually computer automation) and need not contain
> control flow. HTML instructs a "web browser" (automated tool)
> on how to display data.

Then a simple filename is also a program.

Re: C isn't a programming language

<t1n7ro$i2a$2@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: lew.pitc...@digitalfreehold.ca (Lew Pitcher)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 14:27:04 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 16
Message-ID: <t1n7ro$i2a$2@dont-email.me>
References: <t1i34t$m94$1@dont-email.me>
<programming-language-20220326131605@ram.dialup.fu-berlin.de>
<t1n2ks$pe7$1@dont-email.me> <t1n4gg$i2a$1@dont-email.me>
<t1n7jl$iaj$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Sat, 26 Mar 2022 14:27:04 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="468125a3b29f3a409b2662a36952e64a";
logging-data="18506"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/wFLXv57jnJZ4javNF7X7zve96nfZHswQ="
User-Agent: Pan/0.139 (Sexual Chocolate; GIT bf56508
git://git.gnome.org/pan2)
Cancel-Lock: sha1:KUJFSrqyVctMSLSKNUaBrU4Rlcs=
 by: Lew Pitcher - Sat, 26 Mar 2022 14:27 UTC

On Sat, 26 Mar 2022 15:22:45 +0100, Bonita Montero wrote:

>> I disagree. In general, a "program" provides instructions to
>> automation (usually computer automation) and need not contain
>> control flow. HTML instructs a "web browser" (automated tool)
>> on how to display data.
>
> Then a simple filename is also a program.

Oh? And what automated activity directly follows from "a simple filename"?

--
Lew Pitcher
"In Skills, We Trust"

Re: C isn't a programming language

<filenames-20220326154240@ram.dialup.fu-berlin.de>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!not-for-mail
From: ram...@zedat.fu-berlin.de (Stefan Ram)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: 26 Mar 2022 14:43:07 GMT
Organization: Stefan Ram
Lines: 12
Expires: 1 Apr 2023 11:59:58 GMT
Message-ID: <filenames-20220326154240@ram.dialup.fu-berlin.de>
References: <t1i34t$m94$1@dont-email.me> <programming-language-20220326131605@ram.dialup.fu-berlin.de> <t1n2ks$pe7$1@dont-email.me> <t1n4gg$i2a$1@dont-email.me> <t1n7jl$iaj$1@dont-email.me> <t1n7ro$i2a$2@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: news.uni-berlin.de IEMBxAJ4JzRfbeTfNmYv6QKYzJXy5yIApkr6u5pdEV07aM
X-Copyright: (C) Copyright 2022 Stefan Ram. All rights reserved.
Distribution through any means other than regular usenet
channels is forbidden. It is forbidden to publish this
article in the Web, to change URIs of this article into links,
and to transfer the body without this notice, but quotations
of parts in other Usenet posts are allowed.
X-No-Archive: Yes
Archive: no
X-No-Archive-Readme: "X-No-Archive" is set, because this prevents some
services to mirror the article in the web. But the article may
be kept on a Usenet archive server with only NNTP access.
X-No-Html: yes
Content-Language: en-US
Accept-Language: de-DE, en-US, it, fr-FR
 by: Stefan Ram - Sat, 26 Mar 2022 14:43 UTC

Lew Pitcher <lew.pitcher@digitalfreehold.ca> quotes and writes:
>>Then a simple filename is also a program.
>Oh? And what automated activity directly follows from "a simple filename"?

For example,

cat filename

. "cat" is an interpreter taking the program "filename".
The automatic activity ensues according to the manpage of "cat".

Re: C isn't a programming language

<semantics-20220326161411@ram.dialup.fu-berlin.de>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!not-for-mail
From: ram...@zedat.fu-berlin.de (Stefan Ram)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: 26 Mar 2022 15:14:40 GMT
Organization: Stefan Ram
Lines: 10
Expires: 1 Apr 2023 11:59:58 GMT
Message-ID: <semantics-20220326161411@ram.dialup.fu-berlin.de>
References: <t1i34t$m94$1@dont-email.me> <programming-language-20220326131605@ram.dialup.fu-berlin.de> <t1n2ks$pe7$1@dont-email.me> <t1n4gg$i2a$1@dont-email.me> <t1n7jl$iaj$1@dont-email.me> <t1n7ro$i2a$2@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: news.uni-berlin.de 5qqqVdvbZq+j83bGHpIReAwwR/DShvMJpjdHEC9MNAg6lW
X-Copyright: (C) Copyright 2022 Stefan Ram. All rights reserved.
Distribution through any means other than regular usenet
channels is forbidden. It is forbidden to publish this
article in the Web, to change URIs of this article into links,
and to transfer the body without this notice, but quotations
of parts in other Usenet posts are allowed.
X-No-Archive: Yes
Archive: no
X-No-Archive-Readme: "X-No-Archive" is set, because this prevents some
services to mirror the article in the web. But the article may
be kept on a Usenet archive server with only NNTP access.
X-No-Html: yes
Content-Language: en-US
Accept-Language: de-DE, en-US, it, fr-FR
 by: Stefan Ram - Sat, 26 Mar 2022 15:14 UTC

Lew Pitcher <lew.pitcher@digitalfreehold.ca> quotes and writes:
>>Then a simple filename is also a program.
>Oh? And what automated activity directly follows from "a simple filename"?

You may also have a preconception that operational semantics
is the only kind of semantics programming languages can have.
But there are also functional programming languages in which
values are expressed.

Re: C isn't a programming language

<t1nbk3$3ti$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: david.br...@hesbynett.no (David Brown)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 16:31:14 +0100
Organization: A noiseless patient Spider
Lines: 83
Message-ID: <t1nbk3$3ti$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me> <7m0%J.469671$oF2.277206@fx10.iad>
<t1ibau$mtp$1@gioia.aioe.org> <t1is1k$74g$1@dont-email.me>
<t1l10h$1ts6$1@gioia.aioe.org> <t1l4f7$4tb$1@dont-email.me>
<t1mq4a$pqh$1@dont-email.me> <t1n4sj$rjd$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Date: Sat, 26 Mar 2022 15:31:15 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="74118e5496784f77910156a27ffe2e3d";
logging-data="4018"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX183bSEJnLBntrqEWAah1TrG9RfPTIFD0tg="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:1z4WKSfoSEQYgoOD7zgp5x54iQU=
In-Reply-To: <t1n4sj$rjd$1@dont-email.me>
Content-Language: en-GB
 by: David Brown - Sat, 26 Mar 2022 15:31 UTC

On 26/03/2022 14:36, Bart wrote:
> On 26/03/2022 10:32, David Brown wrote:
>> On 25/03/2022 20:16, Bart wrote:
>>
>>> Typedefs should be used when they make sense for the project. If used to
>>> just to mitigate the awfulness of the type syntax, then something is
>>> wrong.
>>>
>>> You don't want to do so just to ensure you are declaring the correct
>>> type here:
>>>
>>
>> Why not?
>>
>> It is very common in programming languages that the basic language
>> provides some fundamental low-level features, and ways to build on top
>> of that.  Having a logically simple and consistent low-level type system
>> is a good idea, but it can sometimes result in code that is hard to read
>> (that applies whether you have lots of asterisk symbols or lots of "ref"
>> keywords).  Typedef lets you give names to the types, resulting in
>> clearer and more flexible code.
>>
>> Typedef's are nothing more than an application of the most basic
>> principle of programming - divide your task into parts and give the
>> parts names, so that you can concentrate on the part of the code you are
>> interested in at the time, and so that you can reuse the parts.  It's no
>> different from functions, or structs, or compilation units, or any other
>> named part of code.
>>
>> Some languages are truly painful to work with at their fundamental
>> level, but far nicer at a higher level defined on top of that.  If
>> you've ever looked at low-level "raw" TeX code, it is looks like a
>> contender for Wikipedia's page on esoteric programming languages.  LaTeX
>> is vastly more friendly - yet it is built on TeX through nothing more
>> than macros.
>
> I haven't argued against using typedefs in a language.
>
> Only against being obliged to use them to overcome severe shortcomings
> in the way types are expressed.
>

Let's just agree to disagree about what shortcomings there might be in
C's type specifications, and those in other languages. IMHO,
consistency and lack of ambiguity are the most important points.

> That doesn't make the problems go away; it merely papers over them.

If typedef's let you use types in C without being bothered by the syntax
issues that you dislike, then then they /have/ made the problem go away.
Papering over them is fine.

In my code, I like to use size-specific types - "int32_t", "uint16_t",
etc. Some C programmers prefer to use "int" or "unsigned short", others
prefer types with shorter names like "i32" or "u16". Typedefs let you
do that, and use the names that suit you without concern for their
underlying definitions. Some people like to write out complicated mixes
of function pointers, arrays, pointers, const, explicitly in C - other
people like to name parts with typedefs and build them up that way.
Both work. In either case, the challenge to understanding the code is
figuring out what the complex type is for, and you'd have exactly the
same issue with types built up in a different syntax (such as in your
languages). At least with typedef's there's a chance the programmer
picked useful names that will give you a clue.

>
> And not everyone will actually use typedefs either, then you still have
> to wheel out Cdecl.
>

Like the vast majority of C programmers, I've never had the need for
Cdecl. Complicated types with more than a couple of levels of
indirection are quite rare, and understanding them is rarely the hard
part of understanding the code in question.

> This type syntax should have been strangled at birth. They were already
> existing, /linear/ ways of expressing arbitrary types when C was
> devised, and which were easier to parse too.

I'm not going to defend C's choice of type syntax as being particularly
nice, or necessarily the best way. But it /is/ consistent with the
language (types are specified in the same way they are used). And most
people manage to use them fine.

Re: C isn't a programming language

<t1ne04$14rb$1@gioia.aioe.org>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!aioe.org!Puiiztk9lHEEQC0y3uUjRA.user.46.165.242.75.POSTED!not-for-mail
From: non...@add.invalid (Manfred)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 17:11:47 +0100
Organization: Aioe.org NNTP Server
Message-ID: <t1ne04$14rb$1@gioia.aioe.org>
References: <t1i34t$m94$1@dont-email.me> <7m0%J.469671$oF2.277206@fx10.iad>
<t1ibau$mtp$1@gioia.aioe.org> <t1is1k$74g$1@dont-email.me>
<t1l10h$1ts6$1@gioia.aioe.org> <t1l4f7$4tb$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="37739"; posting-host="Puiiztk9lHEEQC0y3uUjRA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
X-Notice: Filtered by postfilter v. 0.9.2
Content-Language: en-US
 by: Manfred - Sat, 26 Mar 2022 16:11 UTC

On 3/25/2022 8:16 PM, Bart wrote:
> On 25/03/2022 18:17, Manfred wrote:
[...]
>>
>> More in general, it is about indirection. If a language's declaration
>> syntax allows for any combination of indirection constructs, then
>> things may get convoluted, but it's the type itself that is
>> convoluted, not necessarily the syntax's fault.
>>
>> And, obviously, typedefs make things a /lot/ easier.
>
> Typedefs should be used when they make sense for the project. If used to
> just to mitigate the awfulness of the type syntax, then something is wrong.
>

Possibly, but.

When writing a program, you are effectively modeling a problem domain.
Defining the data types of the information items that the problem
revolves around is a key step in such process.
In this perspective typedefs, together with user defined types, play a
very useful role in software design.

If you come to a point where you have to handle some complex type only
once in your program, or you end up having a plethora of unrelated
cryptic types, then that is a good hint for looking at how good your
model is.

Re: C isn't a programming language

<t1nfev$1q0h$1@gioia.aioe.org>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!aioe.org!Puiiztk9lHEEQC0y3uUjRA.user.46.165.242.75.POSTED!not-for-mail
From: non...@add.invalid (Manfred)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 17:36:46 +0100
Organization: Aioe.org NNTP Server
Message-ID: <t1nfev$1q0h$1@gioia.aioe.org>
References: <t1i34t$m94$1@dont-email.me>
<programming-language-20220326131605@ram.dialup.fu-berlin.de>
<t1n2ks$pe7$1@dont-email.me> <t1n4gg$i2a$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="59409"; posting-host="Puiiztk9lHEEQC0y3uUjRA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Content-Language: en-US
X-Notice: Filtered by postfilter v. 0.9.2
 by: Manfred - Sat, 26 Mar 2022 16:36 UTC

On 3/26/2022 2:29 PM, Lew Pitcher wrote:
> On Sat, 26 Mar 2022 13:58:04 +0100, Bonita Montero wrote:
>
>>> I am in conflict with people who claim that HTML is not a
>>> programming language, so I have written a German-language
>>> text explaining why HTML is indeed a programming language.
>>> But for C, I'm at a loss, I have no such text prepared for C!
>>
>> A program has a control flow.
>> HTML is a static data-structure without a control flow.
>> So you can't program in HTML.
>
> I disagree. In general, a "program" provides instructions to
> automation (usually computer automation) and need not contain
> control flow. HTML instructs a "web browser" (automated tool) on
> how to display data. In that respect, you can write HTML, and the
> resulting text will act as a "program" for a web browser. A
> similar argument can be made for GCODE (the way 3D printers and
> automated mills are "programmed") or even the punch cards used
> to control a Jacquard loom.
>
> However, most here (of which I am one) would probably first think
> of code written in a Turing-complete language as a "program". A
> Turing-complete language /does/ have control flow. If we restrict
> "programming" to "writing in Turing-complete languages", then we
> exclude HTML, GCODE, and a large number of other human-planned
> automated process controls from "programming".
>

A note about G-Code: even the basic language is sequential, so it can be
argued to have some control flow. I don't know if branch statements are
part of the standardized language, but many implementations do have
branches, loops and logical operators, so I'm not sure it can't be
qualified as Turing complete. In the CNC world it is definitely
considered a programming language.

Re: C isn't a programming language

<t1nfsh$mou$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: Bonita.M...@gmail.com (Bonita Montero)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 17:44:02 +0100
Organization: A noiseless patient Spider
Lines: 5
Message-ID: <t1nfsh$mou$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me>
<programming-language-20220326131605@ram.dialup.fu-berlin.de>
<t1n2ks$pe7$1@dont-email.me> <t1n4gg$i2a$1@dont-email.me>
<t1n7jl$iaj$1@dont-email.me> <t1n7ro$i2a$2@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 26 Mar 2022 16:44:01 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="a550cff5da757da1df249f5750959578";
logging-data="23326"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX186MRfGqMX4pISUnQ2DdAn7fNDraUYWwYk="
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:f0/JXUms7yrAoGbpC6EFRgfRDx0=
In-Reply-To: <t1n7ro$i2a$2@dont-email.me>
Content-Language: de-DE
 by: Bonita Montero - Sat, 26 Mar 2022 16:44 UTC

> Oh? And what automated activity directly follows from "a simple filename"?

I wanted to take your statement into an extreme.
According to what you said every data-structure which is
programatically interpreted is a program.

Re: C isn't a programming language

<t1ngjs$82m$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: bc...@freeuk.com (Bart)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 16:56:29 +0000
Organization: A noiseless patient Spider
Lines: 64
Message-ID: <t1ngjs$82m$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me> <7m0%J.469671$oF2.277206@fx10.iad>
<t1ibau$mtp$1@gioia.aioe.org> <t1is1k$74g$1@dont-email.me>
<t1l10h$1ts6$1@gioia.aioe.org> <t1l4f7$4tb$1@dont-email.me>
<t1ne04$14rb$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 26 Mar 2022 16:56:28 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="34aac532d18c0e2a55bc8091acb10070";
logging-data="8278"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+lr5IfKMkbfUS3ugCB8m60pRccDKB1GNg="
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:zQfcQc7MKko6RlYb0ka2LYrxmeg=
In-Reply-To: <t1ne04$14rb$1@gioia.aioe.org>
 by: Bart - Sat, 26 Mar 2022 16:56 UTC

On 26/03/2022 16:11, Manfred wrote:
> On 3/25/2022 8:16 PM, Bart wrote:
>> On 25/03/2022 18:17, Manfred wrote:
> [...]
>>>
>>> More in general, it is about indirection. If a language's declaration
>>> syntax allows for any combination of indirection constructs, then
>>> things may get convoluted, but it's the type itself that is
>>> convoluted, not necessarily the syntax's fault.
>>>
>>> And, obviously, typedefs make things a /lot/ easier.
>>
>> Typedefs should be used when they make sense for the project. If used
>> to just to mitigate the awfulness of the type syntax, then something
>> is wrong.
>>
>
> Possibly, but.
>
> When writing a program, you are effectively modeling a problem domain.
> Defining the data types of the information items that the problem
> revolves around is a key step in such process.
> In this perspective typedefs, together with user defined types, play a
> very useful role in software design.
>
> If you come to a point where you have to handle some complex type only
> once in your program, or you end up having a plethora of unrelated
> cryptic types, then that is a good hint for looking at how good your
> model is.

This is the kind of thing I'm talking about:

void (*)(void)
void (**)(void)
void (***)(void)
void *(*)(void)
void **(*)(void)

I wouldn't even know where to start with using typedefs to express these
more clearly; perhaps:

typedef void F(void);
typedef void* G(void);
typedef void** H(void);

F*
F**
F***
G*
H**

You start by first removing all the "*" inside the first set of
parentheses. Then creating named types for distinct combinations of
functions that follow. Then reinstating those "*" to each instance of
that new type.

However, this is rather going around the houses. It's also necessary to
locate all instances of 'void(*)(void)' in a program, to ensure they all
use the same typedef, even though they may be used for diverse purposes.

IMV this does not improve matters, since you are now hunting global
typedefs looking for what F or G might mean. It also doesn't help when
`void(*)(void)` is used in an imported header than you aren't allowed to
modify, or which employs its own typedef.

Re: C isn't a programming language

<t1ni35$ulf$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: rek...@hispagatos.org.invalid (rek2 hispagatos)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 17:21:41 -0000 (UTC)
Organization: Hispagatos
Lines: 17
Message-ID: <t1ni35$ulf$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me>
<programming-language-20220326131605@ram.dialup.fu-berlin.de>
<t1n2ks$pe7$1@dont-email.me>
Reply-To: ReK2 <rek2@hispagatos.org>
Injection-Date: Sat, 26 Mar 2022 17:21:41 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="811e6c7369061bd767038910576239a3";
logging-data="31407"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX181irictsiWzS5SV0Em5t6J"
User-Agent: slrn/pre1.0.4-6 (Linux)
Cancel-Lock: sha1:sl3kOHWYcPlQ62x/nOSTgH9bgno=
 by: rek2 hispagatos - Sat, 26 Mar 2022 17:21 UTC

On 2022-03-26, Bonita Montero <Bonita.Montero@gmail.com> wrote:
>> I am in conflict with people who claim that HTML is not a
>> programming language, so I have written a German-language
>> text explaining why HTML is indeed a programming language.
>> But for C, I'm at a loss, I have no such text prepared for C!
>
> A program has a control flow.
> HTML is a static data-structure without a control flow.
> So you can't program in HTML.

this above. HTML is not a programming language.

--
https://hispagatos.org
Gemini://rek2.hispagatos.org
https://hispagatos.space/@rek2
https://portal.mozz.us/gemini/rek2.hispagatos.org/

Re: C isn't a programming language

<t1nif9$dmq$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: bc...@freeuk.com (Bart)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: Sat, 26 Mar 2022 17:28:10 +0000
Organization: A noiseless patient Spider
Lines: 50
Message-ID: <t1nif9$dmq$1@dont-email.me>
References: <t1i34t$m94$1@dont-email.me> <7m0%J.469671$oF2.277206@fx10.iad>
<t1ibau$mtp$1@gioia.aioe.org> <t1is1k$74g$1@dont-email.me>
<t1l10h$1ts6$1@gioia.aioe.org> <t1l4f7$4tb$1@dont-email.me>
<t1ne04$14rb$1@gioia.aioe.org> <t1ngjs$82m$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Sat, 26 Mar 2022 17:28:09 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="34aac532d18c0e2a55bc8091acb10070";
logging-data="14042"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/qcEyxo9yI7/qRhha32cTGHxuDbgY3QOk="
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.7.0
Cancel-Lock: sha1:TfyTUxsmDGklVCFXMPbRUanTQRg=
In-Reply-To: <t1ngjs$82m$1@dont-email.me>
 by: Bart - Sat, 26 Mar 2022 17:28 UTC

On 26/03/2022 16:56, Bart wrote:
> On 26/03/2022 16:11, Manfred wrote:

>> Possibly, but.
>>
>> When writing a program, you are effectively modeling a problem domain.
>> Defining the data types of the information items that the problem
>> revolves around is a key step in such process.
>> In this perspective typedefs, together with user defined types, play a
>> very useful role in software design.
>>
>> If you come to a point where you have to handle some complex type only
>> once in your program, or you end up having a plethora of unrelated
>> cryptic types, then that is a good hint for looking at how good your
>> model is.
>
> This is the kind of thing I'm talking about:
>
>     void (*)(void)
>     void (**)(void)
>     void (***)(void)
>     void *(*)(void)
>     void **(*)(void)
>
> I wouldn't even know where to start with using typedefs to express these
> more clearly; perhaps:
>
>     typedef void F(void);
>     typedef void* G(void);
>     typedef void** H(void);
>
>     F*
>     F**
>     F***
>     G*
>     H**

This didn't even work: The "*"s added to the instance are related to the
number of indirections to the function itself, not the return type.

That last should be just H*.

So typedef here didn't just stop me getting it wrong; it made it even
more confusing, especially trying to remember what's baked into the
typedef and what still needs to be applied, and applied to each variable
here:

H *p, *q, *r;

Bake in too much, and the number of typedefs needed escalates.

Re: C isn't a programming language

<gAI%J.216073$%uX7.141662@fx38.iad>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!news.freedyn.de!newsreader4.netcologne.de!news.netcologne.de!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx38.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: C isn't a programming language
Newsgroups: comp.lang.c
References: <t1i34t$m94$1@dont-email.me> <programming-language-20220326131605@ram.dialup.fu-berlin.de> <t1n2ks$pe7$1@dont-email.me> <t1n4gg$i2a$1@dont-email.me> <t1n7jl$iaj$1@dont-email.me> <t1n7ro$i2a$2@dont-email.me> <filenames-20220326154240@ram.dialup.fu-berlin.de>
Lines: 18
Message-ID: <gAI%J.216073$%uX7.141662@fx38.iad>
X-Complaints-To: abuse@usenetserver.com
NNTP-Posting-Date: Sat, 26 Mar 2022 18:03:56 UTC
Organization: UsenetServer - www.usenetserver.com
Date: Sat, 26 Mar 2022 18:03:56 GMT
X-Received-Bytes: 1427
 by: Scott Lurndal - Sat, 26 Mar 2022 18:03 UTC

ram@zedat.fu-berlin.de (Stefan Ram) writes:
>Lew Pitcher <lew.pitcher@digitalfreehold.ca> quotes and writes:
>>>Then a simple filename is also a program.
>>Oh? And what automated activity directly follows from "a simple filename"?
>
> For example,
>
>cat filename
>
> . "cat" is an interpreter taking the program "filename".
> The automatic activity ensues according to the manpage of "cat".
>

Cat, fundamentally, is a single while loop:

while (!eof(stdin)) putc(getc());

The shell is an interpreter. cat(1) is a filter.

Re: C isn't a programming language

<slrnt3uora.1rfm.grahn+nntp@frailea.sa.invalid>

  copy mid

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

  copy link   Newsgroups: comp.lang.c
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: grahn+n...@snipabacken.se (Jorgen Grahn)
Newsgroups: comp.lang.c
Subject: Re: C isn't a programming language
Date: 26 Mar 2022 19:03:06 GMT
Lines: 14
Message-ID: <slrnt3uora.1rfm.grahn+nntp@frailea.sa.invalid>
References: <t1i34t$m94$1@dont-email.me>
X-Trace: individual.net ylezANHcgqCHITEwG2HEkQ39B1MiShvWW9FbdLfe+S4BQ2FeiX
Cancel-Lock: sha1:SHHadUeZSk06HBa4tYxwJAyrhsw=
User-Agent: slrn/1.0.3 (OpenBSD)
 by: Jorgen Grahn - Sat, 26 Mar 2022 19:03 UTC

On Thu, 2022-03-24, Richard Harnden wrote:
> "C: Everyone's favourite programming language isn't a programming language"
>
> Erm ... <https://www.theregister.com/2022/03/23/c_not_a_language>

After clicking around a bit, that seems to have been a typo for "C is
not just a programming language anymore" -- a completely different and
more sensible statement.

/Jorgen

--
// Jorgen Grahn <grahn@ Oo o. . .
\X/ snipabacken.se> O o .

Pages:123
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor