From: imp@bsdimp.com (Warner Losh)
Subject: [TUHS] origins of void* -- Apology!
Date: Mon, 6 Nov 2017 15:18:39 -0700 [thread overview]
Message-ID: <CANCZdfprpArHZAdkyu6Tb8tpeHQ79iUpN6CXTMop85DFyQunnA@mail.gmail.com> (raw)
In-Reply-To: <7617c69abf46fbe3f206c6208000fe3b26854359@webmail.yaccman.com>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 4018 bytes --]
On Mon, Nov 6, 2017 at 2:46 PM, Steve Johnson <scj at yaccman.com> wrote:
> I had a senior moment when I sent out my posting about the origin of void
> *. The person in question
> was Larry Rossler, not Charlie Roberts -- apologies to both!
>
> Larry was active in the ANSI committee, so he had a bully pulpit for
> suggesting this change...
>
> About Bliss, there certainly was a bit of a competition for a while
> between C and Bliss, and Bliss wasn't such a bad language. But the
> technology behind it was pretty ugly. You had to compile PDP-11 programs
> on a Dec System 20, which shut out a large percentage of the people who
> might have been interested. And they took a very relaxed stance of
> pointer aliasing -- basically, the compiler assumed that no two pointers
> pointed to the same thing unless you turned on a flag in which case it
> assume all pointers pointed to all other pointers. This would not have
> worked well for system code...
>
> Pascal was a much more serious competitor -- it was much easier to teach
> 75 people in a room how to program in Pascal than in C, and P-code was a
> reasonable portability mechanism. The differences have been much discussed
> in this forum so I won't restart that thread again...
>
> At one point about 15 years after C has pretty much won over Bliss, I gave
> a job interview to a programmer at Dec who was responsible for maintaining
> 50 million lines of bliss. I've rarely met anyone who was more determined
> to change jobs!
>
I've seen the signature "Bliss is ignorance" :)
Warner
> Steve
>
>
>
> ----- Original Message -----
> From:
> "Warner Losh" <imp at bsdimp.com>
>
> To:
> <arnold at skeeve.com>
> Cc:
> "TUHS main list" <tuhs at minnie.tuhs.org>, "Paul Ruizendaal" <pnr at planet.nl>
> Sent:
> Mon, 6 Nov 2017 08:02:53 -0700
> Subject:
> Re: [TUHS] origins of void*
>
>
>
>
> On Mon, Nov 6, 2017 at 12:24 AM, <arnold at skeeve.com> wrote:
>
>> Paul Ruizendaal <pnr at planet.nl> wrote:
>>
>> > >> In the 4BSD era there was caddr_t, which I think was used for pretty
>> > >> much the same purposes.
>> > >
>> > > Only for kernel code. I am pretty sure caddr_t wasn't used in
>> user-land code.
>> >
>> > Ah, thanks for pointing that out, I had not realised that and it helps
>> > explain some things. But why wasn’t caddr_t used for user-land code:
>> > usage in the signature of e.g. write() would have made sense, right?
>>
>> It's clear from K&R 1 that char* served as both pointer to string and
>> generic pointer to memory. That's not unreasonable, since, in some sense,
>> "memory is just bytes". So user-land code didn't need caddr_t. I also
>> suspect that caddr_t came into being with the effort to port Unix off
>> the PDP-11 and the weight of Unix practice before then had been to make
>> do with char*.
>>
>> I think it helps to remember the evolutionary processes that were
>> happening
>> in the '70s. High level languages had caught on for application code
>> (FORTRAN and COBOL in the US, Algol in Europe) but the weight of existing
>> practice for *systems coding* (operating systems and utilities) had been
>> to use assembly language. Multics proved that you could write an OS in
>> a high level language, but Multics itself (at that time) wasn't a success.
>>
>> So when C came along in the mid-'70s, strong typing had essentially been
>> absent from systems programming. With time and experience, along with
>> the recognition in the general CS world that strong typing was valuable,
>> C also started to evolve in that direction.
>>
>
> I thought there'd also been some influences from BLISS... DEC did much of
> their system programming in BLISS along side the MACRO-{11,32,20}.... Not
> exactly a strongly typed language, but another entry in the higher level
> language category that C was competing against.
>
> Warner
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20171106/5efd365c/attachment-0001.html>
next prev parent reply other threads:[~2017-11-06 22:18 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-04 10:19 [TUHS] origins of void* Paul Ruizendaal
2017-11-05 9:48 ` Clem Cole
2017-11-05 10:06 ` arnold
2017-11-05 13:20 ` Ron Natalie
2017-11-05 15:14 ` Warner Losh
2017-11-05 17:53 ` Clem cole
2017-11-05 18:29 ` Steve Simon
2017-11-05 20:12 ` Clem cole
2017-11-05 21:08 ` Chet Ramey
2017-11-05 21:38 ` Clem cole
2017-11-05 21:53 ` Steve Simon
2017-11-05 20:44 ` Paul Ruizendaal
2017-11-05 21:06 ` Warner Losh
2017-11-06 7:24 ` arnold
2017-11-06 15:02 ` Warner Losh
2017-11-06 21:46 ` [TUHS] origins of void* -- Apology! Steve Johnson
2017-11-06 22:18 ` Warner Losh [this message]
2017-11-07 0:25 ` Ron Natalie
2017-11-07 0:34 ` Arthur Krewat
2017-11-07 0:36 ` Ron Natalie
2017-11-07 1:09 ` Bakul Shah
2017-11-07 1:55 ` Ron Natalie
2017-11-08 17:44 ` Ralph Corderoy
2017-11-08 19:56 ` Ron Natalie
2017-11-08 20:39 ` Don Hopkins
2017-11-08 20:42 ` Ron Natalie
2017-11-08 20:47 ` Don Hopkins
2017-11-08 20:48 ` Don Hopkins
2017-11-08 20:43 ` Don Hopkins
2017-11-08 20:43 ` Clem Cole
2017-11-08 20:45 ` Warner Losh
2017-11-09 6:33 ` Lars Brinkhoff
2017-11-08 20:50 ` Steve Nickolas
2017-11-08 21:25 ` Bakul Shah
2017-11-09 6:37 ` Lars Brinkhoff
2017-11-09 7:14 ` Don Hopkins
2017-11-09 7:44 ` Lars Brinkhoff
2017-11-10 23:43 ` [TUHS] PowerPC, bit twiddling - was " Toby Thain
2017-11-10 23:58 ` Ralph Corderoy
2017-11-07 15:34 [TUHS] " Nelson H. F. Beebe
2017-11-08 12:48 ` Tony Finch
2017-11-08 13:36 ` Otto Moerbeek
2017-11-08 16:03 ` Warner Losh
2017-11-08 16:07 Nemo
2017-11-08 16:12 ` Warner Losh
2017-11-08 19:59 ` Ron Natalie
2017-11-08 23:33 ` Steffen Nurpmeso
2017-11-09 1:35 ` Steve Johnson
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=CANCZdfprpArHZAdkyu6Tb8tpeHQ79iUpN6CXTMop85DFyQunnA@mail.gmail.com \
--to=imp@bsdimp.com \
/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).