All, we had another dozen TUHS suscribers to the list overnight. Welcome.
A reminder that we're here to discuss Unix Heritage, so I'll nudge you
if the conversation goes a bit off-topic.
So I'll kick off another thread. What was your "ahah" moment when you
first saw that Unix was special, especially compared to the systems you'd
previously used?
Mine was: Oh, I can:
+ write a simple script
+ to edit a file on the fly
+ with no temporary files (a la pipes)
+ AND I can change the file suffix and the system won't stop me!
I was using TOPS-20 beforehand.
Cheers, Warren
DMR explained how PDP-7 UNIX was used in "The Evolution of the Unix
Time-sharing System" but having played with it myself, I stumbled in a
couple of cases and found it a bit awkward to use.
Maybe someone (ken and doug?) can shed some light on "elaborate set of
conventions" that dmr mentioned.
My questions are these:
you cannot execute a program if you're in a directory you can't write into.
I asked Warren about this when I first tried pdp7 unix and he
explained it to me: the shell creates a link to the binary and executes
it. If it can't write into the current directory, it fails to create the
link and hence can't execute the program.
How was this handled in practice? did users have write
permissions on all directories? did you just stay in your directory all
the time?
. and ..
Was this introduced first with PDP-11 unix or did the convention
start on the PDP-7 already? It certainly seems to be the case with .
but how about ..? the dd directory seems to take on the role of a sort
of root directory and the now discovered program pd actually creates a
file .. (haven't tried to understand what it does though yet)
What does dd stand for, dotdot? directory directory?
aap
> As noted in the jargon file, the dd(1) syntax is deliberately reminiscent
> of the DD statement in IBM JCL. This was presumably a joke
That is certainly true and reflects its major early usage to
prepare tapes to carry to other systems.
Though I haven't use dit in ages, I recall that the joke was
so fully engtained that the command was more likely to be
written "dd ifile=x ofile=y" than "dd <x >y"
Doug
> From: Abhinav Rajagopalan
> I only now realized that only mknod existed, up until a long time, only
> later on with the GNU coreutils did mkdir as a command come into
> existence.
Huh? See:
https://minnie.tuhs.org//cgi-bin/utree.pl?file=V6/usr/man/man1/mkdir.1
(And probably before that, that was the quickest one to find?)
Maybe that was a typo for 'mkdir as a system call'? (I recall having to do a
fork() to execute 'mkdir', back when.) But 4.2 had mkdir().
Noel
Bakul Shah:
Being an OS student I had read "The Unix Timesharing System" paper by
Ritchie and Thompson and had wanted to use Unix years before I actually
had the chance. I don't remember an "Aha!" moment but I took to it like
a duck to water. Most everything felt just so comfortable and right.
It was very much as I had imagined it to be.
=====
That's more or less what it was like to me. Not so much
an aha! moment, more just a feeling of coming home. It
took a while to understand the different way things worked
in UNIX (I had previously used TOPS-10 for several years)
but as it all sank in it felt more and more right.
C felt the same way. It took me a while to grok the pointer
syntax (I had done a lot of MACRO-10 programming so I certainly
understood the concept, just not how it fit into the higher-
level language), but things like the three-clause condition
in for so that all control for a loop could be in one place
were just magically right.
I don't think I read the CACM paper before I touched UNIX,
but I had read both editions of Software Tools, so my brain
was perhaps pre-seeded with some of the ideas.
Norman Wilson
Toronto ON
> From: Warren Toomey <wkt(a)tuhs.org>
> But wasn't "chdir" built into the PDP-7 Unix shell?
No. See "The Evolution of the Unix Time-sharing System", in section "Process
control".
Also, the old 'cd' had different syntax than today's (since there was no notion
of a pathname in the earliest Unix); it took instead a list of directories (e.g.
"cd dd ken").
Noel
On 10/21/19 9:05 AM, tuhs-request(a)minnie.tuhs.org wrote:
> Message: 17
> Date: Mon, 21 Oct 2019 08:10:00 -0400 (EDT)
> From:jnc@mercury.lcs.mit.edu (Noel Chiappa)
> To:tuhs@minnie.tuhs.org
> Cc:jnc@mercury.lcs.mit.edu
> Subject: Re: [TUHS] What was your "Aha, Unix!" moment?
> Message-ID:<20191021121000.34E3B18C09F(a)mercury.lcs.mit.edu>
>
> > From: Warren Toomey<wkt(a)tuhs.org>
>
> > But wasn't "chdir" built into the PDP-7 Unix shell?
>
> No. See "The Evolution of the Unix Time-sharing System", in section "Process
> control".
>
> Also, the old 'cd' had different syntax than today's (since there was no notion
> of a pathname in the earliest Unix); it took instead a list of directories (e.g.
> "cd dd ken").
>
> Noel
>
Wanna have some fun?
chdir system
then try to find your way back 'home'...
v0's subdirectories suck.
--
GPG Fingerprint: 68F4 B3BD 1730 555A 4462 7D45 3EAA 5B6D A982 BAAF
On the copy of this story that appears here:
http://crash.com/fun/texts/vaxen-dont.html
it is atrributed as such:
'The author of this piece is Jack Harvey, harvey(at)eisner.decus.org, and
it was originally published under the title "The Immortal Murderer" on
January 18th, 1989 on DECUServe, the DECUS member bulletin board.'
--Pat.