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
I hope everyone's having a lovely tail end of whichever season is gracing your
hemisphere. Had some surprise snow this morning up in the NW corner of the US,
hoping it bodes well for a mild summer.
I'm curious, is anyone aware of any attempts to revise John Lions's UNIX
Commentary for versions beyond the Sixth Edition? Having finished my
disassembly of the classic video game Dragon Quest this past year, I'm now doing
some planning for a similar work and have considered practicing the art a little
by doing some diffing of V6 and V7 and feeling out the process by putting down
some revisions, that way I've got some of the flow and kinks worked out before I
start on my own "Commentary on Dragon Quest" manuscript. I'd hate to double up
on something someone else has already done though, so if V7 for instance has
gotten this treatment, then perhaps focusing on PWB or the CB-UNIX kernel would
minimize the potential rehashing.
Also if anyone has any thoughts, suggestions, etc. from their own experiences
working up very detailed source-level documentation of a large software product,
I'd certainly be interested, as I know this is going to turn into quite the
sprawling undertaking once I really get going, especially if I try and work in
the differences between the Japanese and U.S. releases (of which there are many.)
- Matt G.
> From: Bakul Shah
> Use of "flag" for this purpose seems strange. "option" makes more sense.
People on this list seem to forget that there were computers before UNIX.
The _syntax_ of "-f" probably predates any UNIX; Multics used it extensively.
See the "Introduction to Multics", MAC-TR-123, January 1974 (a little after
UNIX V1, but I expect I could probably track it back further in time, if I
cared to put in the effort); pg. 3-24.
Interestingly, I looked though the CTSS manual, and CTSS did not seem to use
this syntax for flag arguments: see, e.g., the SAVE command (section AH.3.03).
The _name_ "flag" came in early on UNIX. (Multics called them "arguments";
see above, pg. 3-27, top line.) We can see this happen - see:
http://squoze.net/UNIX/v1man/man1/du
which calls the "-a" and "-s" "arguments"; but in:
http://squoze.net/UNIX/v1man/man1/ld
"-s", "-u", etc are called "flag arguments".
Long enough ago that certainty about the etymology/rationale is probably now
lost.
Noel
Hello,
A great article on the floppy disk.
https://www.abortretry.fail/p/the-floppy-disk
--
Boyd Gerber <gerberb(a)zenez.com> 801 849-0213
ZENEZ 1042 East Fort Union #135, Midvale Utah 84047
> why did AT&T refer to "flags" as "keyletters" in its SysV documentation?
Bureaucracies beget bureaucratese--polysyllabic obfuscation, witness
APPLICATION USAGE in place of BUGS.
One might argue that replacing "flag" by "option", thus doubling the number
of syllables, was a small step in that direction. In fact it was a
deliberate attempt to discard jargon in favor of normal English usage.
Doug
> Al Kossow wrote:
>
> > there are emulators that can still run it, along with its small library of tools and applications. “NOS/MT was left in an arrested state” as John puts it.
>
> URL?
>
> I've never heard of a surviving copy
Your best start is here: http://www.powertrancortex.com
The UK Powertran Cortex was quite close to the Marinchip M9900 in capabilities and John’s software was ported to it. The website has an emulator and disk images for most of the user land and “MDEX” -- a simple executive that John wrote to bootstrap his software stack. This material survived in the hands of a few Powertran Cortex enthusiasts. They also had disks for NOS/MT (binaries + sysgen), but those were found after that website was made 10+ years ago.
The Powertran Cortex design was also used to build an industrial control computer, the PP95. The UK company behind that did most of the porting work and had a complete M9900 system to do the work on. In 2018 the inventory of that company was found in a garage including that M9900 system. Also more disk images and manuals, including the NOS/MT User Manual. The disks included a few that contained reconstituted (partial) source code for NOS/MT. With a little help from John, I was able to reconstitute the remainder of the source code. All this is not online.
I will contact you off list to see how this can be best preserved.
Paul
Earlier this year two well known computer scientists passed away.
On New Year’s Day it was Niklaus Wirth aged 90. A month later it was John Walker aged 75. Both have some indirect links to Unix.
For Wirth the link is that a few sources claim that Plan 9 and the Go language are in part influenced by the design ideas of Oberon, the language and the OS. Maybe others on this list know more about those influences.
For Walker, the link is via the company that he was running as a side-business before he got underway with AutoCAD: https://www.fourmilab.ch/documents/marinchip/
In that business he was selling a 16-bit system for the S-100 bus, based around the TI9900 CPU (which from a programmer perspective is quite similar to a PDP11). For that system he wrote a Unix-like operating system around 1978-1980, called NOS/MT. He had never worked with Unix, but had spelled the BSTJ issues about it. It was fully written in assembler.
The design was rather unique, maybe inspired by Heinz Lycklama’s “Satellite Processor” paper in BSTJ 57-6. It has a central microkernel that handles message exchange, process scheduling and memory management. Each system call is a message. However, the system call message is then passed on to a privileged “fat kernel” process that handles it. The idea was to provide multiprocessor and network transparency: the microkernel could decide to run processes on other boards in the same rack or on remote systems over a network. Also the kernel processes could be remote. Hence its name “Network Operating System / Multitasking” or “NOS/MT”.
The system calls are pretty similar to Unix. The file system is implemented very similar to Unix (with i-nodes etc.), with some notable differences (there are file locking primitives and formatting a disk is a system call). File handles are not shareable, so special treatment for stdin/out/err is hardcoded. Scheduling and memory management are totally different -- unsurprising as in both cases it reflects the underlying hardware.
Just as NOS/MT was getting into a usable state, John decided to pivot to packaged software including a precursor of what would become the AutoCAD package. What was there worked and saw some use in the UK and Denmark in the 1980’s -- there are emulators that can still run it, along with its small library of tools and applications. “NOS/MT was left in an arrested state” as John puts it. I guess it will remain one of those many “what if” things in computer history.
Just recollecting old memories: why did AT&T refer to "flags" as
"keyletters" in its SysV documentation? Some sort of denial of
Ed5/6/7/BSD's very existence?
The one good they did was the TTY driver...
-- Dave, who used to work for a SysVile shop
All, while I'm reminiscing about Minnie's history, I just noticed that we
have hit 30,000 postings on the combined TUHS/PUPS mailing list.
===
In the spirit of early Unix, does that mean the message number
has wrapped back to low numbers, skipping those occupied by
messages still running, like process IDs?
Norman Wilson
(temporarily thousands of km from)
Toronto ON