The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] Any Good dmr Anecdotes?
@ 2018-06-29  7:53 Warren Toomey
  2018-06-29 10:53 ` ches@Cheswick.com
  2018-06-29 23:55 ` Dave Horsfall
  0 siblings, 2 replies; 30+ messages in thread
From: Warren Toomey @ 2018-06-29  7:53 UTC (permalink / raw)
  To: tuhs

We do have ken on the list, so I won't be presumptious to ask for ken-related
anecdotes, but would anybody like to share some dmr anecdotes?

I never met Dennis in person, but he was generous with his time about my
interest in Unix history; and also with sharing the material he still had.

Dennis was very clever, though. He would bring out a new artifact and say:
well, here's what I still have of X. Pity it will never execute again, sigh.

I'm sure he knew that I would take that as a challenge. Mind you, it worked,
which is why we now have the first Unix kernel in C, the 'nsys' kernel, and
the first two C compilers, in executable format.

Any other good anecdotes?

Cheers, Warren

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-29  7:53 [TUHS] Any Good dmr Anecdotes? Warren Toomey
@ 2018-06-29 10:53 ` ches@Cheswick.com
  2018-06-29 12:51   ` John P. Linderman
  2018-06-30  0:50   ` Steve Johnson
  2018-06-29 23:55 ` Dave Horsfall
  1 sibling, 2 replies; 30+ messages in thread
From: ches@Cheswick.com @ 2018-06-29 10:53 UTC (permalink / raw)
  To: Warren Toomey; +Cc: tuhs

Dennis, do you have any recommendations on good books to use the learn C?

I don’t know, I never had to learn C.   -dmr

Message by ches. Tappos by iPad.


> On Jun 29, 2018, at 3:53 AM, Warren Toomey <wkt@tuhs.org> wrote:
> 
> We do have ken on the list, so I won't be presumptious to ask for ken-related
> anecdotes, but would anybody like to share some dmr anecdotes?
> 
> I never met Dennis in person, but he was generous with his time about my
> interest in Unix history; and also with sharing the material he still had.
> 
> Dennis was very clever, though. He would bring out a new artifact and say:
> well, here's what I still have of X. Pity it will never execute again, sigh.
> 
> I'm sure he knew that I would take that as a challenge. Mind you, it worked,
> which is why we now have the first Unix kernel in C, the 'nsys' kernel, and
> the first two C compilers, in executable format.
> 
> Any other good anecdotes?
> 
> Cheers, Warren


^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-29 10:53 ` ches@Cheswick.com
@ 2018-06-29 12:51   ` John P. Linderman
  2018-06-30  0:50   ` Steve Johnson
  1 sibling, 0 replies; 30+ messages in thread
From: John P. Linderman @ 2018-06-29 12:51 UTC (permalink / raw)
  To: ches@Cheswick.com; +Cc: The Eunuchs Hysterical Society

[-- Attachment #1: Type: text/plain, Size: 1591 bytes --]

I heard about this second hand, so anyone with first hand knowledge should
feel free to correct me.

When AT&T took an ill-fated plunge into chip manufacture, our chips were on
the large side. Dennis noted that "When Intel spoils a wafer, they turn the
chips into tie-tacks. When we spoil a wafer, we turn the chips into belt
buckles". This so infuriated the VP in charge of manufacture that he wanted
"this dmr guy" fired. Needless to say, that didn't happen.

On Fri, Jun 29, 2018 at 6:53 AM, ches@Cheswick.com <ches@cheswick.com>
wrote:

> Dennis, do you have any recommendations on good books to use the learn C?
>
> I don’t know, I never had to learn C.   -dmr
>
> Message by ches. Tappos by iPad.
>
>
> > On Jun 29, 2018, at 3:53 AM, Warren Toomey <wkt@tuhs.org> wrote:
> >
> > We do have ken on the list, so I won't be presumptious to ask for
> ken-related
> > anecdotes, but would anybody like to share some dmr anecdotes?
> >
> > I never met Dennis in person, but he was generous with his time about my
> > interest in Unix history; and also with sharing the material he still
> had.
> >
> > Dennis was very clever, though. He would bring out a new artifact and
> say:
> > well, here's what I still have of X. Pity it will never execute again,
> sigh.
> >
> > I'm sure he knew that I would take that as a challenge. Mind you, it
> worked,
> > which is why we now have the first Unix kernel in C, the 'nsys' kernel,
> and
> > the first two C compilers, in executable format.
> >
> > Any other good anecdotes?
> >
> > Cheers, Warren
>
>

[-- Attachment #2: Type: text/html, Size: 2278 bytes --]

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-29  7:53 [TUHS] Any Good dmr Anecdotes? Warren Toomey
  2018-06-29 10:53 ` ches@Cheswick.com
@ 2018-06-29 23:55 ` Dave Horsfall
  2018-06-30  0:06   ` Greg 'groggy' Lehey
  2018-06-30 14:20   ` John P. Linderman
  1 sibling, 2 replies; 30+ messages in thread
From: Dave Horsfall @ 2018-06-29 23:55 UTC (permalink / raw)
  To: The Eunuchs Hysterical Society

On Fri, 29 Jun 2018, Warren Toomey wrote:

> We do have ken on the list, so I won't be presumptious to ask for 
> ken-related anecdotes, but would anybody like to share some dmr 
> anecdotes?

Wasn't it Dennis whose morphed picture featured on a t-shirt at an AUUG 
conference in the 80s?  I can't seem to find a reference right now,,,

-- Dave

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-29 23:55 ` Dave Horsfall
@ 2018-06-30  0:06   ` Greg 'groggy' Lehey
  2018-06-30 14:20   ` John P. Linderman
  1 sibling, 0 replies; 30+ messages in thread
From: Greg 'groggy' Lehey @ 2018-06-30  0:06 UTC (permalink / raw)
  To: Dave Horsfall; +Cc: The Eunuchs Hysterical Society

[-- Attachment #1: Type: text/plain, Size: 883 bytes --]

On Saturday, 30 June 2018 at  9:55:02 +1000, Dave Horsfall wrote:
> On Fri, 29 Jun 2018, Warren Toomey wrote:
>
>> We do have ken on the list, so I won't be presumptious to ask for
>> ken-related anecdotes, but would anybody like to share some dmr
>> anecdotes?
>
> Wasn't it Dennis whose morphed picture featured on a t-shirt at an AUUG
> conference in the 80s?  I can't seem to find a reference right now,,,

No, that was Peter Weinberger, as dmr confirmed.  There's quite a
story behind what happened to the stencil.  I'll let Warren tell it,
but if you want to cheat, check
http://www.lemis.com/grog/diary-oct2002.php#17

Greg
--
Sent from my desktop computer.
Finger grog@lemis.com for PGP public key.
See complete headers for address and phone numbers.
This message is digitally signed.  If your Microsoft mail program
reports problems, please read http://lemis.com/broken-MUA

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 163 bytes --]

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-29 10:53 ` ches@Cheswick.com
  2018-06-29 12:51   ` John P. Linderman
@ 2018-06-30  0:50   ` Steve Johnson
  2018-06-30 11:44     ` Arrigo Triulzi
  1 sibling, 1 reply; 30+ messages in thread
From: Steve Johnson @ 2018-06-30  0:50 UTC (permalink / raw)
  To: ches@Cheswick.com, Warren Toomey; +Cc: tuhs

[-- Attachment #1: Type: text/plain, Size: 3326 bytes --]

That so sounds like Dennis!   I can add a couple of other things
about Dennis, outside of work.  

A group of us used to go into New York from time to time to take in a
concert, and Dennis was often one of the group.   One time in the
dead of winter, we went to an Early Music concert in a cold drafty
church in winter--it was part of a series called "Music before
1620".    The musicians were almost unable to get their instruments
to stay in tune, and the whole thing was kind of train wreck.   On
the way back, Dennis said "It's clear that pitch was invented sometime
after 1620."

On another occasion, we found ourselves in Brooklyn having blintzes
outside on picnic tables.  My 4-year-old son was with us.  My wife
was telling people how my son was starting to ask questions about
sex.   My son, hearing his name, said "What's sex?".   Dennis said
"See."

A work-related anecdote.  There was a manager in USG who managed to
get on the nerves of many of us in Research.   One day we came in to
discover that he had been promoted and took a job in Japan.   We
were discussing this at lunch, and someone said "Why Japan?".  
Dennis said "They haven't opened their office on the moon yet."

Steve

PS:  I certainly remember the belt buckle quip.  That chip was so
big that they could not finish the test patterns before the chip came
back.   So they generated random tests and compared the results
until they found two that were the same.  They concluded that these
two chips were fabricated correctly, and went on from there.   The
chip had a number of flaws, and we scrambled to fix them in
software.  One was that the branch instruction garbled the last 4
bits of the branch target.   So one of the guys hacked the assembler
to make every label the center of a "target" of 32 NOP instructions. 
We were able to get the chip to run, and even run an asteroid
game....  The guy to made the fix put up a sign outside of his office
that said "BellMac chips fixed while U wait."   The same VP was
rather PO'd about this as well...

----- Original Message -----
From: "ches@Cheswick.com" <ches@cheswick.com>
To:"Warren Toomey" <wkt@tuhs.org>
Cc:<tuhs@tuhs.org>
Sent:Fri, 29 Jun 2018 06:53:02 -0400
Subject:Re: [TUHS] Any Good dmr Anecdotes?

 Dennis, do you have any recommendations on good books to use the
learn C?

 I don’t know, I never had to learn C. -dmr

 Message by ches. Tappos by iPad.

 > On Jun 29, 2018, at 3:53 AM, Warren Toomey <wkt@tuhs.org> wrote:
 > 
 > We do have ken on the list, so I won't be presumptious to ask for
ken-related
 > anecdotes, but would anybody like to share some dmr anecdotes?
 > 
 > I never met Dennis in person, but he was generous with his time
about my
 > interest in Unix history; and also with sharing the material he
still had.
 > 
 > Dennis was very clever, though. He would bring out a new artifact
and say:
 > well, here's what I still have of X. Pity it will never execute
again, sigh.
 > 
 > I'm sure he knew that I would take that as a challenge. Mind you,
it worked,
 > which is why we now have the first Unix kernel in C, the 'nsys'
kernel, and
 > the first two C compilers, in executable format.
 > 
 > Any other good anecdotes?
 > 
 > Cheers, Warren



[-- Attachment #2: Type: text/html, Size: 4091 bytes --]

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-30  0:50   ` Steve Johnson
@ 2018-06-30 11:44     ` Arrigo Triulzi
  2018-06-30 22:42       ` Arthur Krewat
                         ` (2 more replies)
  0 siblings, 3 replies; 30+ messages in thread
From: Arrigo Triulzi @ 2018-06-30 11:44 UTC (permalink / raw)
  To: Steve Johnson; +Cc: tuhs

My memories of dmr are limited to one encounter when he came to Italy, more precisely to the University of Milan, in the late 70s or early 80s (cannot remember exactly, there’s a picture in Peter Salus’ book though).

I was a child, had been introduced to Lisp as part of an experiment in teaching to primary school children but my dad, at the time teaching robotics in the nascent “Cybernetics” group of the Physics department, was starting me on C. 

As I was told this visitor was the R in the “K&R” book I felt I could finally ask “someone who knew” how printf() worked with a variable number of arguments. I was at best 10 and dmr patiently sat down and explained it to me in terms I could understand. I remember that he asked me if I understood pointers, I told him it was like putting a big arrow which you could move around, pointing to a house instead of actually using the house number and he smiled then taking the explanation on from there.

I wish I could have met him again in my life to thank him for that time he dedicated to a child to demystify printf().

Arrigo 



^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-29 23:55 ` Dave Horsfall
  2018-06-30  0:06   ` Greg 'groggy' Lehey
@ 2018-06-30 14:20   ` John P. Linderman
  1 sibling, 0 replies; 30+ messages in thread
From: John P. Linderman @ 2018-06-30 14:20 UTC (permalink / raw)
  To: Dave Horsfall; +Cc: The Eunuchs Hysterical Society


[-- Attachment #1.1: Type: text/plain, Size: 455 bytes --]

Peter and the magnets

On Fri, Jun 29, 2018 at 7:55 PM, Dave Horsfall <dave@horsfall.org> wrote:

> On Fri, 29 Jun 2018, Warren Toomey wrote:
>
> We do have ken on the list, so I won't be presumptious to ask for
>> ken-related anecdotes, but would anybody like to share some dmr anecdotes?
>>
>
> Wasn't it Dennis whose morphed picture featured on a t-shirt at an AUUG
> conference in the 80s?  I can't seem to find a reference right now,,,
>
> -- Dave
>

[-- Attachment #1.2: Type: text/html, Size: 972 bytes --]

[-- Attachment #2: pjw.jpg --]
[-- Type: image/jpeg, Size: 130047 bytes --]

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-30 11:44     ` Arrigo Triulzi
@ 2018-06-30 22:42       ` Arthur Krewat
  2018-06-30 23:29         ` Arrigo Triulzi
  2018-07-01  5:29       ` Dave Horsfall
  2018-07-03 17:34       ` Perry E. Metzger
  2 siblings, 1 reply; 30+ messages in thread
From: Arthur Krewat @ 2018-06-30 22:42 UTC (permalink / raw)
  To: tuhs



On 6/30/2018 7:44 AM, Arrigo Triulzi wrote:
>   I remember that he asked me if I understood pointers, I told him it was like putting a big arrow which you could move around, pointing to a house instead of actually using the house number and he smiled then taking the explanation on from there.
>
ok, where's the "Like" button?!?!??!?

Just kidding, all, but what a wonderful story.


^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-30 22:42       ` Arthur Krewat
@ 2018-06-30 23:29         ` Arrigo Triulzi
  2018-07-01  4:17           ` Larry McVoy
  2018-07-01 11:42           ` ron
  0 siblings, 2 replies; 30+ messages in thread
From: Arrigo Triulzi @ 2018-06-30 23:29 UTC (permalink / raw)
  To: Arthur Krewat; +Cc: tuhs

On 1 Jul 2018, at 00:42, Arthur Krewat <krewat@kilonet.net> wrote:
> On 6/30/2018 7:44 AM, Arrigo Triulzi wrote:
>>  I remember that he asked me if I understood pointers, I told him it was like putting a big arrow which you could move around, pointing to a house instead of actually using the house number and he smiled then taking the explanation on from there.
>> 
> ok, where's the "Like" button?!?!??!?
> 
> Just kidding, all, but what a wonderful story.

By all accounts he was a wonderful person.

Arrigo

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-30 23:29         ` Arrigo Triulzi
@ 2018-07-01  4:17           ` Larry McVoy
  2018-07-01 11:42           ` ron
  1 sibling, 0 replies; 30+ messages in thread
From: Larry McVoy @ 2018-07-01  4:17 UTC (permalink / raw)
  To: Arrigo Triulzi; +Cc: tuhs

On Sun, Jul 01, 2018 at 01:29:24AM +0200, Arrigo Triulzi wrote:
> On 1 Jul 2018, at 00:42, Arthur Krewat <krewat@kilonet.net> wrote:
> > On 6/30/2018 7:44 AM, Arrigo Triulzi wrote:
> >>  I remember that he asked me if I understood pointers, I told him it was like putting a big arrow which you could move around, pointing to a house instead of actually using the house number and he smiled then taking the explanation on from there.
> >> 
> > ok, where's the "Like" button?!?!??!?
> > 
> > Just kidding, all, but what a wonderful story.
> 
> By all accounts he was a wonderful person.

He really was.  Always willing to teach someone who wasn't up to speed yet
but was trying.  That story about the 10 year old should be on a plaque 
somewhere.
-- 
---
Larry McVoy            	     lm at mcvoy.com             http://www.mcvoy.com/lm 

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-30 11:44     ` Arrigo Triulzi
  2018-06-30 22:42       ` Arthur Krewat
@ 2018-07-01  5:29       ` Dave Horsfall
  2018-07-01  8:28         ` Arrigo Triulzi
  2018-07-01 11:34         ` ron
  2018-07-03 17:34       ` Perry E. Metzger
  2 siblings, 2 replies; 30+ messages in thread
From: Dave Horsfall @ 2018-07-01  5:29 UTC (permalink / raw)
  To: The Eunuchs Hysterical Society

[-- Attachment #1: Type: text/plain, Size: 338 bytes --]

On Sat, 30 Jun 2018, Arrigo Triulzi wrote:

> As I was told this visitor was the R in the “K&R” book I felt I could 
> finally ask “someone who knew” how printf() worked with a variable 
> number of arguments.

It wouldn't've used that awful nargs() call at that time, would it?  I was 
glad when that horror was removed.

-- Dave

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-01  5:29       ` Dave Horsfall
@ 2018-07-01  8:28         ` Arrigo Triulzi
  2018-07-01 11:34         ` ron
  1 sibling, 0 replies; 30+ messages in thread
From: Arrigo Triulzi @ 2018-07-01  8:28 UTC (permalink / raw)
  To: Dave Horsfall; +Cc: The Eunuchs Hysterical Society

On 1 Jul 2018, at 07:29, Dave Horsfall <dave@horsfall.org> wrote:
> 
> On Sat, 30 Jun 2018, Arrigo Triulzi wrote:
> 
>> As I was told this visitor was the R in the “K&R” book I felt I could finally ask “someone who knew” how printf() worked with a variable number of arguments.
> 
> It wouldn't've used that awful nargs() call at that time, would it?  I was glad when that horror was removed.

I was about 10 at the time, I hope you will excuse me for not recalling this detail. I just recall the way that he used my “arrows in the street” to explain how printf() walked through the argument list carrying an arrow on its shoulder, then did what it had to do until it got to the end of the street. As you can probably imagine it is still how I visualise the workings of printf() to this day. Note that this was pure K&R, pre-ANSI C varargs.

Arrigo


^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-01  5:29       ` Dave Horsfall
  2018-07-01  8:28         ` Arrigo Triulzi
@ 2018-07-01 11:34         ` ron
  2018-07-09 16:30           ` Random832
  1 sibling, 1 reply; 30+ messages in thread
From: ron @ 2018-07-01 11:34 UTC (permalink / raw)
  To: 'Dave Horsfall', 'The Eunuchs Hysterical Society'

Printf didn't use nargs (and still doesn't).    It looked at the presence of the % markers and assumes that’s how many arguments were passed.
It worked on the PDP-11 or any similar stack calling sequence.   It was only after C got moved to some of the more varied architectures that
VARARGS/STDARG was implemented to achieve some level of variable argument portability.   Even so, there's not a concept of "nargs" to this day.

The PDP-11 nargs was a kludge that looked at the calling code.   This obviously didn't work if you were in split I-D mode (where you couldn't address the
i-space).    There was a published hack to rewire the processor to allow MTPI to work in user mode from your OWN I space to make it work.

The bigger issue with the early printf is it just called putchar and putchar only output to stdout or what ever the global fout variable was set to.
There was a comment in the manual that the fout concept was kludgy.


-----Original Message-----
From: TUHS <tuhs-bounces@minnie.tuhs.org> On Behalf Of Dave Horsfall
Sent: Sunday, July 1, 2018 1:30 AM
To: The Eunuchs Hysterical Society <tuhs@tuhs.org>
Subject: Re: [TUHS] Any Good dmr Anecdotes?

On Sat, 30 Jun 2018, Arrigo Triulzi wrote:

> As I was told this visitor was the R in the “K&R” book I felt I could 
> finally ask “someone who knew” how printf() worked with a variable 
> number of arguments.

It wouldn't've used that awful nargs() call at that time, would it?  I was glad when that horror was removed.

-- Dave


^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-30 23:29         ` Arrigo Triulzi
  2018-07-01  4:17           ` Larry McVoy
@ 2018-07-01 11:42           ` ron
  1 sibling, 0 replies; 30+ messages in thread
From: ron @ 2018-07-01 11:42 UTC (permalink / raw)
  To: tuhs

Dennis always answered his emails and was very humble in the light of most
of the UNIX guys holding him in god like status.   I remember he'd sit with
us in the lobby or cocktail lounge or by the pool at the USENIX meetings.
Just happy to be hanging out with the rest of us.    One year, while I was
working for the Army and we were getting a lot of internal pressure to use
Ada, I made a bunch of t-shirts up that had Ada Lovelace with a big red
circle/slash (NO) on it.   I pointed out that at the time there were several
government projects to write internet routers contracted out and all
mandated Ada.   I developed one in house at the Army and wrote it in C (it
also used media with UNIX boot blocks on it).    

I gave Dennis one of these shirts at a conference.   I saw subsequent
pictures of him wearing it.



^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-06-30 11:44     ` Arrigo Triulzi
  2018-06-30 22:42       ` Arthur Krewat
  2018-07-01  5:29       ` Dave Horsfall
@ 2018-07-03 17:34       ` Perry E. Metzger
  2 siblings, 0 replies; 30+ messages in thread
From: Perry E. Metzger @ 2018-07-03 17:34 UTC (permalink / raw)
  To: tuhs

Incredibly lame anecdote follows:

Decades ago, I buttonholed dmr at a Usenix ATC and asked him a
bunch of questions about early Unix kernels. I can't remember any of
the specifics any longer (which is a shame in itself), but I do
remember that instead of shooing me away, he was insanely polite and
kind even though he didn't know me and had no reason to be so nice.
Afterwards someone (I think it may have been Tom Christiansen)
pointed out to me that I'd taken up far too much of his time, and
said something to the effect that one had to be careful not to take
excess advantage of his kindness.

Perry
-- 
Perry E. Metzger		perry@piermont.com

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-01 11:34         ` ron
@ 2018-07-09 16:30           ` Random832
  2018-07-09 17:13             ` Clem Cole
  0 siblings, 1 reply; 30+ messages in thread
From: Random832 @ 2018-07-09 16:30 UTC (permalink / raw)
  To: tuhs

On Sun, Jul 1, 2018, at 07:34, ron@ronnatalie.com wrote:
> The bigger issue with the early printf is it just called putchar and 
> putchar only output to stdout or what ever the global fout variable was 
> set to.
> There was a comment in the manual that the fout concept was kludgy.

V6 'iolib' printf has an interesting approach to fixing this:

If the first argument was 0 through 9, it was taken to be a file descriptor, and the second argument was the format string. If it was -1, the second argument was the output string (as for later sprintf), and the third was the format string. Otherwise, the first argument was the format string.

(I'm curious as to how much "iolib" was actually used, since it doesn't appear to have been included by default - there was a different printf routine in libc)

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-09 16:30           ` Random832
@ 2018-07-09 17:13             ` Clem Cole
  2018-07-10  5:54               ` arnold
  0 siblings, 1 reply; 30+ messages in thread
From: Clem Cole @ 2018-07-09 17:13 UTC (permalink / raw)
  To: Random832; +Cc: tuhs

[-- Attachment #1: Type: text/plain, Size: 1999 bytes --]

With V5/V6 C I/O was a lot like what Larry was describing for getopts(3) it
was all over over the map.  There was the portable I/O library which I sort
of think of as the prequel to studio but I don’t remember uSing it much.  I
must have run into most of the different ways people did I/O in some
program(s) but I don’t remember any one off hand.

I think the thing to remember is that at the time system programming
languages such as C and Bliss were noted for not having I/O built into the
language- it was supported externally.  DEC (CMU) with Bliss had rich set
of libraries (often in assembler already available) and force/matched by
them with their users.  Unix and C grew up independently which I think is
part of why it was a tad more random.   BY the time dmr adds stdio, it was
still early enough in the life to displace the randomness for something as
important as I/O, whereas lack of use of something.like getopt would not
become clearly deficient until after widespread success.

On Mon, Jul 9, 2018 at 12:37 PM Random832 <random832@fastmail.com> wrote:

> On Sun, Jul 1, 2018, at 07:34, ron@ronnatalie.com wrote:
> > The bigger issue with the early printf is it just called putchar and
> > putchar only output to stdout or what ever the global fout variable was
> > set to.
> > There was a comment in the manual that the fout concept was kludgy.
>
> V6 'iolib' printf has an interesting approach to fixing this:
>
> If the first argument was 0 through 9, it was taken to be a file
> descriptor, and the second argument was the format string. If it was -1,
> the second argument was the output string (as for later sprintf), and the
> third was the format string. Otherwise, the first argument was the format
> string.
>
> (I'm curious as to how much "iolib" was actually used, since it doesn't
> appear to have been included by default - there was a different printf
> routine in libc)
>
-- 
Sent from a handheld expect more typos than usual

[-- Attachment #2: Type: text/html, Size: 2479 bytes --]

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-09 17:13             ` Clem Cole
@ 2018-07-10  5:54               ` arnold
  2018-07-10  6:09                 ` George Michaelson
  2018-07-10 14:10                 ` Clem Cole
  0 siblings, 2 replies; 30+ messages in thread
From: arnold @ 2018-07-10  5:54 UTC (permalink / raw)
  To: random832, clemc; +Cc: tuhs

Clem Cole <clemc@ccc.com> wrote:

> BY the time dmr adds stdio, it was
> still early enough in the life to displace the randomness for something as
> important as I/O, whereas lack of use of something.like getopt would not
> become clearly deficient until after widespread success.

I think "widespread access" is more like it for getopt.  Getopt dates
to 1980; it was in System III (I just checked). That's only about two years
after V7 which was circa 1978.

Here are the dates:

-rw-rw-r-- 1 arnold arnold 1073 Apr 11  1980 usr/src/lib/libc/pdp11/gen/getopt.c
-rw-rw-r-- 1 arnold arnold 2273 May 16  1980 usr/src/man/man3/getopt.3c

But the world outside the Bell System didn't have System III. Getopt
didn't become "popular" until System V or so, and became much easier to
adopt once Henry Spencer published his public domain rewrite of the code
and man page.

Just a nit, (:-)

Arnold

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-10  5:54               ` arnold
@ 2018-07-10  6:09                 ` George Michaelson
  2018-07-10  7:19                   ` arnold
  2018-07-10 14:10                 ` Clem Cole
  1 sibling, 1 reply; 30+ messages in thread
From: George Michaelson @ 2018-07-10  6:09 UTC (permalink / raw)
  To: arnold; +Cc: TUHS main list

... and then somebody GNUified it. I seem to recall three huge
flamewars in UUCP days: RFS vs NFS, STREAMS (the original) vs sockets,
and getopt

--no -noo --nooo=please --dont-make-me=do-that

On Tue, Jul 10, 2018 at 3:54 PM,  <arnold@skeeve.com> wrote:
> Clem Cole <clemc@ccc.com> wrote:
>
>> BY the time dmr adds stdio, it was
>> still early enough in the life to displace the randomness for something as
>> important as I/O, whereas lack of use of something.like getopt would not
>> become clearly deficient until after widespread success.
>
> I think "widespread access" is more like it for getopt.  Getopt dates
> to 1980; it was in System III (I just checked). That's only about two years
> after V7 which was circa 1978.
>
> Here are the dates:
>
> -rw-rw-r-- 1 arnold arnold 1073 Apr 11  1980 usr/src/lib/libc/pdp11/gen/getopt.c
> -rw-rw-r-- 1 arnold arnold 2273 May 16  1980 usr/src/man/man3/getopt.3c
>
> But the world outside the Bell System didn't have System III. Getopt
> didn't become "popular" until System V or so, and became much easier to
> adopt once Henry Spencer published his public domain rewrite of the code
> and man page.
>
> Just a nit, (:-)
>
> Arnold

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-10  6:09                 ` George Michaelson
@ 2018-07-10  7:19                   ` arnold
  2018-07-11  0:20                     ` Noel Hunt
  0 siblings, 1 reply; 30+ messages in thread
From: arnold @ 2018-07-10  7:19 UTC (permalink / raw)
  To: ggm, arnold; +Cc: tuhs

RFS vs. NFS and sockets vs. STREAMS were much more serious; they were
about the directions Unix would take going forward, where interoperability
(RFS/NFS) and code portability (sockets/STREAMS) were big either/or issues.

Had AT&T been smarter about its licensing, both RFS and STREAMS might
have "won", but they weren't, and those technologies have all but
disappeared.

GNU getopt can be used in a source-compatible way with POSIX getopt;
having long options is up to the programmer.  I agree, there were
aesthetic arguments, altough long options have mostly "won".  I'm about
as long-time a Unix aficianado as anyone else here, and for many things
I find long options easier to remember than short ones.

(To their credit, at least initially, the GNU project asked its developers
to use the same long options in all programs for operations that were
the same.)

Arnold


George Michaelson <ggm@algebras.org> wrote:

> ... and then somebody GNUified it. I seem to recall three huge
> flamewars in UUCP days: RFS vs NFS, STREAMS (the original) vs sockets,
> and getopt
>
> --no -noo --nooo=please --dont-make-me=do-that
>
> On Tue, Jul 10, 2018 at 3:54 PM,  <arnold@skeeve.com> wrote:
> > Clem Cole <clemc@ccc.com> wrote:
> >
> >> BY the time dmr adds stdio, it was
> >> still early enough in the life to displace the randomness for something as
> >> important as I/O, whereas lack of use of something.like getopt would not
> >> become clearly deficient until after widespread success.
> >
> > I think "widespread access" is more like it for getopt.  Getopt dates
> > to 1980; it was in System III (I just checked). That's only about two years
> > after V7 which was circa 1978.
> >
> > Here are the dates:
> >
> > -rw-rw-r-- 1 arnold arnold 1073 Apr 11  1980 usr/src/lib/libc/pdp11/gen/getopt.c
> > -rw-rw-r-- 1 arnold arnold 2273 May 16  1980 usr/src/man/man3/getopt.3c
> >
> > But the world outside the Bell System didn't have System III. Getopt
> > didn't become "popular" until System V or so, and became much easier to
> > adopt once Henry Spencer published his public domain rewrite of the code
> > and man page.
> >
> > Just a nit, (:-)
> >
> > Arnold

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-10  5:54               ` arnold
  2018-07-10  6:09                 ` George Michaelson
@ 2018-07-10 14:10                 ` Clem Cole
  1 sibling, 0 replies; 30+ messages in thread
From: Clem Cole @ 2018-07-10 14:10 UTC (permalink / raw)
  To: Aharon Robbins; +Cc: TUHS main list

[-- Attachment #1: Type: text/plain, Size: 1208 bytes --]

Right (and I agree) -- widespread usage/really being noticed.
And that was because it came in the Summit releases not the Research/UCB
stream, which did not help either.
ᐧ

On Tue, Jul 10, 2018 at 1:54 AM, <arnold@skeeve.com> wrote:

> Clem Cole <clemc@ccc.com> wrote:
>
> > BY the time dmr adds stdio, it was
> > still early enough in the life to displace the randomness for something
> as
> > important as I/O, whereas lack of use of something.like getopt would not
> > become clearly deficient until after widespread success.
>
> I think "widespread access" is more like it for getopt.  Getopt dates
> to 1980; it was in System III (I just checked). That's only about two years
> after V7 which was circa 1978.
>
> Here are the dates:
>
> -rw-rw-r-- 1 arnold arnold 1073 Apr 11  1980 usr/src/lib/libc/pdp11/gen/
> getopt.c
> -rw-rw-r-- 1 arnold arnold 2273 May 16  1980 usr/src/man/man3/getopt.3c
>
> But the world outside the Bell System didn't have System III. Getopt
> didn't become "popular" until System V or so, and became much easier to
> adopt once Henry Spencer published his public domain rewrite of the code
> and man page.
>
> Just a nit, (:-)
>
> Arnold
>

[-- Attachment #2: Type: text/html, Size: 2108 bytes --]

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-10  7:19                   ` arnold
@ 2018-07-11  0:20                     ` Noel Hunt
  2018-07-11  1:31                       ` Larry McVoy
  2018-07-13  9:08                       ` [TUHS] " ches@Cheswick.com
  0 siblings, 2 replies; 30+ messages in thread
From: Noel Hunt @ 2018-07-11  0:20 UTC (permalink / raw)
  To: TUHS main list

[-- Attachment #1: Type: text/plain, Size: 2562 bytes --]

I'm surprised why anyone would bother with these routines
anymore, given the startling simplicity of Plan9's arg(3).
One stands in awe of such simplicity. I believe it was
William Cheswick who designed it, but I may be wrong.


On Tue, Jul 10, 2018 at 5:25 PM <arnold@skeeve.com> wrote:

> RFS vs. NFS and sockets vs. STREAMS were much more serious; they were
> about the directions Unix would take going forward, where interoperability
> (RFS/NFS) and code portability (sockets/STREAMS) were big either/or issues.
>
> Had AT&T been smarter about its licensing, both RFS and STREAMS might
> have "won", but they weren't, and those technologies have all but
> disappeared.
>
> GNU getopt can be used in a source-compatible way with POSIX getopt;
> having long options is up to the programmer.  I agree, there were
> aesthetic arguments, altough long options have mostly "won".  I'm about
> as long-time a Unix aficianado as anyone else here, and for many things
> I find long options easier to remember than short ones.
>
> (To their credit, at least initially, the GNU project asked its developers
> to use the same long options in all programs for operations that were
> the same.)
>
> Arnold
>
>
> George Michaelson <ggm@algebras.org> wrote:
>
> > ... and then somebody GNUified it. I seem to recall three huge
> > flamewars in UUCP days: RFS vs NFS, STREAMS (the original) vs sockets,
> > and getopt
> >
> > --no -noo --nooo=please --dont-make-me=do-that
> >
> > On Tue, Jul 10, 2018 at 3:54 PM,  <arnold@skeeve.com> wrote:
> > > Clem Cole <clemc@ccc.com> wrote:
> > >
> > >> BY the time dmr adds stdio, it was
> > >> still early enough in the life to displace the randomness for
> something as
> > >> important as I/O, whereas lack of use of something.like getopt would
> not
> > >> become clearly deficient until after widespread success.
> > >
> > > I think "widespread access" is more like it for getopt.  Getopt dates
> > > to 1980; it was in System III (I just checked). That's only about two
> years
> > > after V7 which was circa 1978.
> > >
> > > Here are the dates:
> > >
> > > -rw-rw-r-- 1 arnold arnold 1073 Apr 11  1980
> usr/src/lib/libc/pdp11/gen/getopt.c
> > > -rw-rw-r-- 1 arnold arnold 2273 May 16  1980 usr/src/man/man3/getopt.3c
> > >
> > > But the world outside the Bell System didn't have System III. Getopt
> > > didn't become "popular" until System V or so, and became much easier to
> > > adopt once Henry Spencer published his public domain rewrite of the
> code
> > > and man page.
> > >
> > > Just a nit, (:-)
> > >
> > > Arnold
>

[-- Attachment #2: Type: text/html, Size: 3756 bytes --]

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-11  0:20                     ` Noel Hunt
@ 2018-07-11  1:31                       ` Larry McVoy
  2018-07-11  1:37                         ` George Michaelson
                                           ` (2 more replies)
  2018-07-13  9:08                       ` [TUHS] " ches@Cheswick.com
  1 sibling, 3 replies; 30+ messages in thread
From: Larry McVoy @ 2018-07-11  1:31 UTC (permalink / raw)
  To: Noel Hunt; +Cc: TUHS main list

On Wed, Jul 11, 2018 at 10:20:50AM +1000, Noel Hunt wrote:
> I'm surprised why anyone would bother with these routines
> anymore, given the startling simplicity of Plan9's arg(3).
> One stands in awe of such simplicity. I believe it was
> William Cheswick who designed it, but I may be wrong.

It's nice but I like long opts.  The getopt in BK (and now in L)
looks like this and produces its own help (which does miss the 
short opts, my bad, I could fix that).  Look at the default in
the switch:

int
main(int ac, string av[])
{
	string	c;
	string	lopts[] = {
		"bigy:",
		"date-split",
		"exif",
		"exif-hover",
		"force",
		"index:",
		"names",
		"nav",
		"parallel:",
		"quiet",
		"regen",
		"reverse",
		"sharpen",
		"slide:",
		"thumbnails",
		"title:",
		"ysize:",
	};

	while (c = getopt(av, "fj:", lopts)) {
		switch (c) {
		    case "bigy": bigy = (int)optarg; break;
		    case "date-split": dates = 1; break;
		    case "exif": exif = 1; break;
		    case "exif-hover": exif_hover = 1; break;
		    case "f":
		    case "force":
		    case "regen":
			force = 1; break;
		    case "index": indexf = optarg; break;
		    case "j":
		    case "parallel": parallel = (int)optarg; break;
		    case "quiet": quiet = 1; break;
		    case "names": names = 1; break;
		    case "nav": nav = 1; break;
		    case "reverse": reverse = 1; break;
		    case "sharpen": sharpen = 1; break;
		    case "slide": slidef = optarg; break;
		    case "title": title = optarg; break;
		    case "thumbnails": thumbnails = 1; break;
		    case "ysize": ysize = (int)optarg; break;
		    default: 
			printf("Usage: photos.l");
			foreach(c in lopts) {
				if (c =~ /(.*):/) {
					printf(" --%s=<val>", $1);
				} else {
					printf(" --%s", c);
				}
			}
			printf("\n");
			return(0);
		}
	}

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-11  1:31                       ` Larry McVoy
@ 2018-07-11  1:37                         ` George Michaelson
  2018-07-11  1:37                         ` ron minnich
  2018-07-11  3:34                         ` [TUHS] getopt (was " Bakul Shah
  2 siblings, 0 replies; 30+ messages in thread
From: George Michaelson @ 2018-07-11  1:37 UTC (permalink / raw)
  To: Larry McVoy; +Cc: TUHS main list

De gustibus non est disputandum.

De unibus non est synchronus and um.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-11  1:31                       ` Larry McVoy
  2018-07-11  1:37                         ` George Michaelson
@ 2018-07-11  1:37                         ` ron minnich
  2018-07-11  3:12                           ` Larry McVoy
  2018-07-11  3:34                         ` [TUHS] getopt (was " Bakul Shah
  2 siblings, 1 reply; 30+ messages in thread
From: ron minnich @ 2018-07-11  1:37 UTC (permalink / raw)
  To: Larry McVoy; +Cc: TUHS main list

[-- Attachment #1: Type: text/plain, Size: 2880 bytes --]

this is a DMR anecdote?

On Tue, Jul 10, 2018 at 6:32 PM Larry McVoy <lm@mcvoy.com> wrote:

> On Wed, Jul 11, 2018 at 10:20:50AM +1000, Noel Hunt wrote:
> > I'm surprised why anyone would bother with these routines
> > anymore, given the startling simplicity of Plan9's arg(3).
> > One stands in awe of such simplicity. I believe it was
> > William Cheswick who designed it, but I may be wrong.
>
> It's nice but I like long opts.  The getopt in BK (and now in L)
> looks like this and produces its own help (which does miss the
> short opts, my bad, I could fix that).  Look at the default in
> the switch:
>
> int
> main(int ac, string av[])
> {
>         string  c;
>         string  lopts[] = {
>                 "bigy:",
>                 "date-split",
>                 "exif",
>                 "exif-hover",
>                 "force",
>                 "index:",
>                 "names",
>                 "nav",
>                 "parallel:",
>                 "quiet",
>                 "regen",
>                 "reverse",
>                 "sharpen",
>                 "slide:",
>                 "thumbnails",
>                 "title:",
>                 "ysize:",
>         };
>
>         while (c = getopt(av, "fj:", lopts)) {
>                 switch (c) {
>                     case "bigy": bigy = (int)optarg; break;
>                     case "date-split": dates = 1; break;
>                     case "exif": exif = 1; break;
>                     case "exif-hover": exif_hover = 1; break;
>                     case "f":
>                     case "force":
>                     case "regen":
>                         force = 1; break;
>                     case "index": indexf = optarg; break;
>                     case "j":
>                     case "parallel": parallel = (int)optarg; break;
>                     case "quiet": quiet = 1; break;
>                     case "names": names = 1; break;
>                     case "nav": nav = 1; break;
>                     case "reverse": reverse = 1; break;
>                     case "sharpen": sharpen = 1; break;
>                     case "slide": slidef = optarg; break;
>                     case "title": title = optarg; break;
>                     case "thumbnails": thumbnails = 1; break;
>                     case "ysize": ysize = (int)optarg; break;
>                     default:
>                         printf("Usage: photos.l");
>                         foreach(c in lopts) {
>                                 if (c =~ /(.*):/) {
>                                         printf(" --%s=<val>", $1);
>                                 } else {
>                                         printf(" --%s", c);
>                                 }
>                         }
>                         printf("\n");
>                         return(0);
>                 }
>         }
>

[-- Attachment #2: Type: text/html, Size: 4303 bytes --]

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-11  1:37                         ` ron minnich
@ 2018-07-11  3:12                           ` Larry McVoy
  0 siblings, 0 replies; 30+ messages in thread
From: Larry McVoy @ 2018-07-11  3:12 UTC (permalink / raw)
  To: ron minnich; +Cc: TUHS main list

Nope, it went sideways.  But some of the most fun information I've gotten
here went sideways.  But if I offend I do beg your forgiveness.

On Tue, Jul 10, 2018 at 06:37:23PM -0700, ron minnich wrote:
> this is a DMR anecdote?
> 
> On Tue, Jul 10, 2018 at 6:32 PM Larry McVoy <lm@mcvoy.com> wrote:
> 
> > On Wed, Jul 11, 2018 at 10:20:50AM +1000, Noel Hunt wrote:
> > > I'm surprised why anyone would bother with these routines
> > > anymore, given the startling simplicity of Plan9's arg(3).
> > > One stands in awe of such simplicity. I believe it was
> > > William Cheswick who designed it, but I may be wrong.
> >
> > It's nice but I like long opts.  The getopt in BK (and now in L)
> > looks like this and produces its own help (which does miss the
> > short opts, my bad, I could fix that).  Look at the default in
> > the switch:
> >
> > int
> > main(int ac, string av[])
> > {
> >         string  c;
> >         string  lopts[] = {
> >                 "bigy:",
> >                 "date-split",
> >                 "exif",
> >                 "exif-hover",
> >                 "force",
> >                 "index:",
> >                 "names",
> >                 "nav",
> >                 "parallel:",
> >                 "quiet",
> >                 "regen",
> >                 "reverse",
> >                 "sharpen",
> >                 "slide:",
> >                 "thumbnails",
> >                 "title:",
> >                 "ysize:",
> >         };
> >
> >         while (c = getopt(av, "fj:", lopts)) {
> >                 switch (c) {
> >                     case "bigy": bigy = (int)optarg; break;
> >                     case "date-split": dates = 1; break;
> >                     case "exif": exif = 1; break;
> >                     case "exif-hover": exif_hover = 1; break;
> >                     case "f":
> >                     case "force":
> >                     case "regen":
> >                         force = 1; break;
> >                     case "index": indexf = optarg; break;
> >                     case "j":
> >                     case "parallel": parallel = (int)optarg; break;
> >                     case "quiet": quiet = 1; break;
> >                     case "names": names = 1; break;
> >                     case "nav": nav = 1; break;
> >                     case "reverse": reverse = 1; break;
> >                     case "sharpen": sharpen = 1; break;
> >                     case "slide": slidef = optarg; break;
> >                     case "title": title = optarg; break;
> >                     case "thumbnails": thumbnails = 1; break;
> >                     case "ysize": ysize = (int)optarg; break;
> >                     default:
> >                         printf("Usage: photos.l");
> >                         foreach(c in lopts) {
> >                                 if (c =~ /(.*):/) {
> >                                         printf(" --%s=<val>", $1);
> >                                 } else {
> >                                         printf(" --%s", c);
> >                                 }
> >                         }
> >                         printf("\n");
> >                         return(0);
> >                 }
> >         }
> >

-- 
---
Larry McVoy            	     lm at mcvoy.com             http://www.mcvoy.com/lm 

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [TUHS] getopt (was Re:  Any Good dmr Anecdotes?
  2018-07-11  1:31                       ` Larry McVoy
  2018-07-11  1:37                         ` George Michaelson
  2018-07-11  1:37                         ` ron minnich
@ 2018-07-11  3:34                         ` Bakul Shah
  2 siblings, 0 replies; 30+ messages in thread
From: Bakul Shah @ 2018-07-11  3:34 UTC (permalink / raw)
  To: Larry McVoy; +Cc: TUHS main list

On Tue, 10 Jul 2018 18:31:27 -0700 Larry McVoy <lm@mcvoy.com> wrote:
Larry McVoy writes:
> On Wed, Jul 11, 2018 at 10:20:50AM +1000, Noel Hunt wrote:
> > I'm surprised why anyone would bother with these routines
> > anymore, given the startling simplicity of Plan9's arg(3).
> > One stands in awe of such simplicity. I believe it was
> > William Cheswick who designed it, but I may be wrong.

plan9 arg macros are indeed very nice.

> It's nice but I like long opts.  The getopt in BK (and now in L)
> looks like this and produces its own help (which does miss the 
> short opts, my bad, I could fix that).  Look at the default in
> the switch:
>
> 	string	c;
> 	string	lopts[] = {
> 		"bigy:",
> 		"date-split",
    ...
> 		"title:",
> 		"ysize:",
> 	};
>
> 	while (c = getopt(av, "fj:", lopts)) {
> 		switch (c) {
> 		    case "bigy": bigy = (int)optarg; break;
> 		    case "date-split": dates = 1; break;
    ...
> 		    case "title": title = optarg; break;
> 		    case "thumbnails": thumbnails = 1; break;
> 		    case "ysize": ysize = (int)optarg; break;
> 		    default: 
> 			printf("Usage: photos.l");

[You can also do a switch on string in Go.]

Having to write the same strings twice is a pain. May be even
three times, if you add usage()!

I don't much like long options as they tend to proliferate.
-- Your typical engineer doesn't like to make hard choices so
indecisions turn into options!

If there have to be long options, I want to be able to
abbreviate them and I want word completion and context
sensitive help as invariably long options end up having
complex semantics.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-11  0:20                     ` Noel Hunt
  2018-07-11  1:31                       ` Larry McVoy
@ 2018-07-13  9:08                       ` ches@Cheswick.com
  2018-07-13 14:10                         ` ron
  1 sibling, 1 reply; 30+ messages in thread
From: ches@Cheswick.com @ 2018-07-13  9:08 UTC (permalink / raw)
  To: Noel Hunt; +Cc: TUHS main list

[-- Attachment #1: Type: text/plain, Size: 2882 bytes --]

I am a fan of these routines, and use the regularly, but I didn’t write them.

Message by ches. Tappos by iPad.


> On Jul 10, 2018, at 9:50 PM, Noel Hunt <noel.hunt@gmail.com> wrote:
> 
> I'm surprised why anyone would bother with these routines
> anymore, given the startling simplicity of Plan9's arg(3).
> One stands in awe of such simplicity. I believe it was
> William Cheswick who designed it, but I may be wrong.
> 
> 
>> On Tue, Jul 10, 2018 at 5:25 PM <arnold@skeeve.com> wrote:
>> RFS vs. NFS and sockets vs. STREAMS were much more serious; they were
>> about the directions Unix would take going forward, where interoperability
>> (RFS/NFS) and code portability (sockets/STREAMS) were big either/or issues.
>> 
>> Had AT&T been smarter about its licensing, both RFS and STREAMS might
>> have "won", but they weren't, and those technologies have all but
>> disappeared.
>> 
>> GNU getopt can be used in a source-compatible way with POSIX getopt;
>> having long options is up to the programmer.  I agree, there were
>> aesthetic arguments, altough long options have mostly "won".  I'm about
>> as long-time a Unix aficianado as anyone else here, and for many things
>> I find long options easier to remember than short ones.
>> 
>> (To their credit, at least initially, the GNU project asked its developers
>> to use the same long options in all programs for operations that were
>> the same.)
>> 
>> Arnold
>> 
>> 
>> George Michaelson <ggm@algebras.org> wrote:
>> 
>> > ... and then somebody GNUified it. I seem to recall three huge
>> > flamewars in UUCP days: RFS vs NFS, STREAMS (the original) vs sockets,
>> > and getopt
>> >
>> > --no -noo --nooo=please --dont-make-me=do-that
>> >
>> > On Tue, Jul 10, 2018 at 3:54 PM,  <arnold@skeeve.com> wrote:
>> > > Clem Cole <clemc@ccc.com> wrote:
>> > >
>> > >> BY the time dmr adds stdio, it was
>> > >> still early enough in the life to displace the randomness for something as
>> > >> important as I/O, whereas lack of use of something.like getopt would not
>> > >> become clearly deficient until after widespread success.
>> > >
>> > > I think "widespread access" is more like it for getopt.  Getopt dates
>> > > to 1980; it was in System III (I just checked). That's only about two years
>> > > after V7 which was circa 1978.
>> > >
>> > > Here are the dates:
>> > >
>> > > -rw-rw-r-- 1 arnold arnold 1073 Apr 11  1980 usr/src/lib/libc/pdp11/gen/getopt.c
>> > > -rw-rw-r-- 1 arnold arnold 2273 May 16  1980 usr/src/man/man3/getopt.3c
>> > >
>> > > But the world outside the Bell System didn't have System III. Getopt
>> > > didn't become "popular" until System V or so, and became much easier to
>> > > adopt once Henry Spencer published his public domain rewrite of the code
>> > > and man page.
>> > >
>> > > Just a nit, (:-)
>> > >
>> > > Arnold

[-- Attachment #2: Type: text/html, Size: 4183 bytes --]

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [TUHS] Any Good dmr Anecdotes?
  2018-07-13  9:08                       ` [TUHS] " ches@Cheswick.com
@ 2018-07-13 14:10                         ` ron
  0 siblings, 0 replies; 30+ messages in thread
From: ron @ 2018-07-13 14:10 UTC (permalink / raw)
  To: 'The Eunuchs Hysterical Society'

[-- Attachment #1: Type: text/plain, Size: 308 bytes --]

Years ago I remember someone suggesting that freeware  be renamed “Fluegelware” after Andrew Fluegelman, a pioneer in the concept who had recently died.

I suggested we rename the C compiler “Ritchie” and the I got a “Let’s nip this in the bud” email back from Dennis in short order.

 


[-- Attachment #2: Type: text/html, Size: 2288 bytes --]

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2018-07-13 14:11 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-29  7:53 [TUHS] Any Good dmr Anecdotes? Warren Toomey
2018-06-29 10:53 ` ches@Cheswick.com
2018-06-29 12:51   ` John P. Linderman
2018-06-30  0:50   ` Steve Johnson
2018-06-30 11:44     ` Arrigo Triulzi
2018-06-30 22:42       ` Arthur Krewat
2018-06-30 23:29         ` Arrigo Triulzi
2018-07-01  4:17           ` Larry McVoy
2018-07-01 11:42           ` ron
2018-07-01  5:29       ` Dave Horsfall
2018-07-01  8:28         ` Arrigo Triulzi
2018-07-01 11:34         ` ron
2018-07-09 16:30           ` Random832
2018-07-09 17:13             ` Clem Cole
2018-07-10  5:54               ` arnold
2018-07-10  6:09                 ` George Michaelson
2018-07-10  7:19                   ` arnold
2018-07-11  0:20                     ` Noel Hunt
2018-07-11  1:31                       ` Larry McVoy
2018-07-11  1:37                         ` George Michaelson
2018-07-11  1:37                         ` ron minnich
2018-07-11  3:12                           ` Larry McVoy
2018-07-11  3:34                         ` [TUHS] getopt (was " Bakul Shah
2018-07-13  9:08                       ` [TUHS] " ches@Cheswick.com
2018-07-13 14:10                         ` ron
2018-07-10 14:10                 ` Clem Cole
2018-07-03 17:34       ` Perry E. Metzger
2018-06-29 23:55 ` Dave Horsfall
2018-06-30  0:06   ` Greg 'groggy' Lehey
2018-06-30 14:20   ` John P. Linderman

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).