The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: "Michael Kjörling" <michael@kjorling.se>
To: tuhs@tuhs.org
Subject: Re: [TUHS] History of popularity of C
Date: Sat, 23 May 2020 19:28:27 +0000	[thread overview]
Message-ID: <ab8a0b56-4fa7-45f3-a91b-c0cb83a03209@localhost> (raw)
In-Reply-To: <CAC20D2NhWp8V88+7KFaRdYPtn=YrJBfWxUu9OM4bOu8Fp_7KEA@mail.gmail.com>

On 23 May 2020 13:08 -0400, from clemc@ccc.com (Clem Cole):
>> I would also argue that non-Unix C compilers actually drove the adoption
>> curve of C.
> 
> I would put a small accent on that.  I think the C compilers that targeted
> non-UNIX systems, and in particular the microprocessors were the driver.
> The micro's started with assembler in most cases.  Basic shows up and is
> small, but it's not good enough for real products like VisiCalc or later
> Lotus.   Pascal tries to be the answer, but I think it suffered from the
> fact that it makes Pascal a production quality language, you had a extend
> it and everybody's extensions were different.

There's also the issue that, even once you get into compiled BASIC
territory, those wretched vendor-unique extensions show up again. Try
porting, say, a non-trivial program written for QuickBASIC to Turbo
BASIC even on the same PC. Both Pascal and BASIC are hard to extend by
the programmer who's actually using them to try to write useful
end-user software, _particularly_ in ways that fit into the rest of
the code, so you're essentially stuck with what the compiler vendor
thought you would need, or what they thought you would be willing to
pay for, in memory or money. On the flip side, much of C's magic
really isn't in the language (which is quite, pardon me, basic), but
rather in the standard library. Yes, C('s standard library) ended up
with its share of vendor-specific extensions as well, but the language
itself actually gave the programmer the building blocks needed to, if
necessary, even implement those extensions for a different compiler;
most often without resorting to more than minimal amounts of
assembler, and often outright none. So you weren't stuck with what the
compiler vendor gave you; it was actually possible to effectively
_extend_ the language vocabulary yourself, if you felt a need to do
that.

I didn't do serious enough programming back during those days for that
to matter to me, but now that I get paid to write software, I
definitely come across situations at times where the ability to extend
the language in such a manner (and have the code using those
extensions read idiomatically for the language) is awful nice.

-- 
Michael Kjörling • https://michael.kjorling.se • michael@kjorling.se
 “Remember when, on the Internet, nobody cared that you were a dog?”


  parent reply	other threads:[~2020-05-23 19:29 UTC|newest]

Thread overview: 105+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-21 15:27 Tyler Adams
2020-05-21 16:10 ` Toby Thain
2020-05-21 16:30   ` Larry McVoy
2020-05-21 17:22     ` John Foust
2020-05-21 20:17       ` Toby Thain
2020-05-21 16:43   ` Tony Finch
2020-05-21 17:35     ` arnold
2020-05-21 19:16       ` CHARLES KESTER
2020-05-21 20:33         ` Thomas Paulsen
2020-05-21 20:09       ` Toby Thain
2020-05-21 20:12       ` Tony Finch
2020-05-22  8:28       ` David Arnold
2020-05-21 20:07     ` Toby Thain
2020-05-21 20:56   ` Clem Cole
2020-05-21 23:45     ` Toby Thain
2020-05-21 23:57       ` Richard Salz
2020-05-22  0:17         ` Toby Thain
2020-05-22  4:10         ` John Gilmore
2020-05-22 14:11           ` Larry McVoy
2020-05-22 14:34             ` Richard Salz
2020-05-22 14:17           ` Larry McVoy
2020-05-22  7:42         ` arnold
2020-05-22 23:50   ` Greg A. Woods
2020-05-23  7:28     ` Andy Kosela
2020-05-23 17:08     ` Clem Cole
2020-05-23 17:22       ` Richard Salz
2020-05-23 18:42       ` Derek Fawcus
2020-05-23 19:28       ` Michael Kjörling [this message]
2020-05-26  4:21       ` Dave Horsfall
2020-05-26  4:32         ` Ed Carp
2020-05-26  8:21           ` Rob Pike
2020-05-26 14:44             ` Clem Cole
2020-05-26 14:32         ` Clem Cole
2020-05-26 19:50           ` Greg A. Woods
2020-05-26 21:48             ` Thomas Paulsen
2020-05-26 22:36               ` Greg A. Woods
2020-05-27 14:37                 ` Ronald Natalie
2020-05-27 15:09                   ` Clem Cole
2020-05-27 16:11                   ` Thomas Paulsen
2020-05-27 19:49                     ` Greg A. Woods
2020-05-27 20:13                       ` Larry McVoy
2020-05-27 20:23                         ` Richard Salz
2020-05-27 21:00                       ` Nevin Liber
2020-05-27 23:17                         ` Greg A. Woods
2020-06-05 20:57                           ` Dave Horsfall
2020-06-05 21:40                             ` Nemo Nusquam
2020-06-05 21:47                             ` Richard Salz
2020-06-05 22:01                               ` Bakul Shah
2020-06-06 20:49                   ` Ed Carp
2020-06-06 21:08                     ` Thomas Paulsen
2020-06-06 21:13                       ` Larry McVoy
2020-06-06 22:27                       ` Ed Carp
2020-06-06 23:14                         ` Tyler Adams
2020-06-07  5:57                         ` arnold
2020-06-07  9:22                           ` Andy Kosela
2020-06-07  9:39                             ` Ed Carp
2020-06-07 10:02                             ` Brantley Coile
2020-06-07 11:30                             ` Thomas Paulsen
2020-06-07 15:26                             ` Clem Cole
2020-06-07 15:52                               ` Larry McVoy
2020-06-08  1:02                                 ` Adam Thornton
2020-06-08  8:04                                   ` Thomas Paulsen
2020-06-07 17:26                               ` Bakul Shah
2020-06-07 17:35                               ` Bakul Shah
2020-06-07 18:50                               ` Nemo Nusquam
2020-06-07 21:15                                 ` Chris Torek
2020-06-07 22:16                                   ` Dan Cross
2020-06-07 22:56                                     ` Chris Torek
2020-06-07 23:14                                       ` [TUHS] Comparative languages Warren Toomey
2020-06-08  0:24                                       ` [TUHS] History of popularity of C Bram Wyllie
2020-06-08  5:48                                   ` Lars Brinkhoff
2020-06-06 23:31                     ` Bakul Shah
2020-06-07  0:12                       ` Greg A. Woods
2020-06-07 11:04                     ` emanuel stiebler
2020-06-07 11:33                       ` Thomas Paulsen
2020-05-26 15:19         ` Toby Thain
2020-05-26 16:00         ` Thomas Paulsen
2020-05-26 16:21           ` Christopher Browne
2020-05-26 19:29             ` Thomas Paulsen
2020-05-26 19:55             ` Dan Cross
2020-05-26 20:00               ` Jon Steinhart
2020-05-21 16:18 ` Jim Capp
2020-05-21 18:58 ` A. P. Garcia
2020-05-21 19:02 ` Clem Cole
2020-05-21 18:28 Noel Chiappa
2020-05-21 18:44 ` Thomas Paulsen
2020-05-21 19:06   ` Paul Winalski
2020-05-21 20:27     ` Thomas Paulsen
2020-05-22  8:52 ` Tom Ivar Helbekkmo via TUHS
2020-05-22  9:51   ` Tyler Adams
2020-05-22 11:09     ` arnold
2020-05-22 11:15       ` Tyler Adams
2020-05-22 18:40         ` John Gilmore
2020-05-22 19:01           ` Toby Thain
2020-05-22 19:35             ` Larry McVoy
2020-05-22 19:31           ` Larry McVoy
2020-05-22 20:19           ` Michael Kjörling
2020-05-22 14:59       ` Toby Thain
2020-05-22 11:58     ` A. P. Garcia
2020-06-06 21:49 Doug McIlroy
2020-06-06 21:55 ` Warner Losh
2020-06-08 13:56 ` Derek Fawcus
2020-06-08 15:20   ` Richard Salz
2020-06-08 15:30 ` Dan Cross
2020-06-08 16:32 ` Tony Finch

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ab8a0b56-4fa7-45f3-a91b-c0cb83a03209@localhost \
    --to=michael@kjorling.se \
    --cc=tuhs@tuhs.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).