On Sun, Mar 03, 2024 at 07:03:39PM -0700, Marc Rochkind wrote:
Will, here's my recollection, when I got to UNIX
in late 1972 or
thereabouts:
First, there was ed. grep and sed were derived from ed, so came along
later. awk came along way later.
There were only manual pages. You typed "man ed" and there it was. The man
pages were very accurate, very clear, and very authoritative. Many found
them too succinct, especially as UNIX got more popular, but all of us back
in the day found them perfect. Maybe you had to read the man page a few
times to understand it, but at least that's all you had to read. No need to
hunt around for more documentation!
(Well, there was more documentation: The source code, which was all online.
But reading the ed source to understand regular expressions was impossible.
It was in assembler, and Ken was generating code on the fly as the
expression was compiled.)
I like to add that there was also quite a large set of additional
documentatiomn (Volume 2, Voilume 1 were the man pages), which
includes "Advanced Editing on UNIX" giving many examples on the use of
regexes in ed(1).
I do remeber reading a lot from Volume 2, as CS students in Amsterdam
we received printed and bound copies of both Volume 1 and 2. So in my
case, "only man pages or source" is not true. Having paper versions
was importent, because access to terminals for students was limited
(until I became a teaching assistent, which came with privileges,
including 24h access to terminals)
-Otto
Also, it should be noted that ed produced a single error message: a
question mark. No wasting of teletype paper!
The motivation for learning regular expressions was that that's how you
edited files. ed was the only game in town.
(sh used a greatly restricted form of regular expressions, which were
documented on the sh man page.)
Marc Rochkind
On Sun, Mar 3, 2024 at 6:31 PM Will Senn <will.senn(a)gmail.com> wrote:
Hi All,
I was wondering, what were the best early sources of information for
regexes and why did folks need to know them to use unix? In my recent
explorations, I have needed to have a better understanding of them, so I'm
digging in... awk's my most recent thing and it's deeply associated with
them, so here we are. I went to the bookshelf to find something appropriate
and as usual, I've traced to primary sources to some extent. I started with
Mastering Regular Expressions by Friedl, and I won't knock it (it's one of
the bestsellers in our field), but it's much to long for my personal taste
and it's not quite as systematic as I would like (the author himself notes
that his interests are less technical than authors preceding him on the
subject). So, back to the shelves... Bourne's, The Unix Environment, and
Kernighan & Pike's, The Unix Programming Evironment both talk about them in
the context of grep, ed, sed, and awk. Going further back, the Unix
Programmer's Manual v7 - ed, grep, sed, awk...
After digging around it seems like folks needed regexes for ed, grep, sed
and awk... and any other utility that leveraged the wonderful nature of
these handy expressions. Fine. Where did folks go learn them? Was there a
particularly good (succinct and accurate) source of information that folks
kept handy? I'm imagining (based on what I've seen) that someone might cut
out the ed discussion or the grep pages of the manual and tape them to
their monitors, but maybe I'm stooopid and they didn't need no stinkin'
memory device for regexes - surely they're intuitive enough that even a
simpleton could pick them up after seeing a few examples... but if that
were really the case, Friedl's book would have been a flop and it wasn't
:). So seriously, if you remember that far back - what was the definitive
source of your regex knowledge and what were the first motivators for
learning them?
Thanks,
Will
--
*My new email address is mrochkind(a)gmail.com <mrochkind(a)gmail.com>*