In 1972, while in high school, I went to an Intel seminar on the 8008.
There I met a Bell Labs scientist who gave me a sample 8008 and invited
me for a visit at some NJ Bell Labs facility. That group had a
timesharing system of some kind, but it was not Unix. I was also given a
Bell Labs speech synthesis kit after meeting one of the speech
scientists who happened to be in on the same Saturday. I have searched
my attic but can't find further details. Would any of you alumni recall
what this other timesharing system might have been?
Dan
Hello everyone,
I'm Wojciech Adam Koszek and I'm a new member here. After a short stint with Red Hat 6.0 and Slackware Linux around 2000-2001 (I think it was Slackware 7.0 or 7.1) my journey with UNIX started with FreeBSD 4.5. I fell in love with BSD and through Warner Losh, Robert Watson, and folks from a Polish UNIX scene, I became hooked. I ended up working with FreeBSD for the following 15 years or so.
Anyway: the volume of the UNIX literature back then in Poland was scarce, yet through a small bookstore and a friendly salesman I got myself a "UNIX Network Programming Volume 1" at a huge discount, and read it back-to-back.
Looking back, his books had a huge impact on my life (I had all his books, and read everything line by line, with a slight exception of TCP/IP illustrated vol 2, which I used as a reference), and while Stevens's website sheds some light on what he did, I often wonder what is the story behind how his books came to be. It doesn't help he appeared a very private person--never have I seen a photo of him anywhere.
What was the reception of his books in the US?
Did you know him? Do you know any more details about what he did after 1990?
Thanks and take care,
Wojciech Adam Koszek
Following my success in getting 6th Edition UNIX running on a KDF11-B,
with support for the MSCP disk controller, I was looking for ways to get
as new a tool chain as possible onto it, with full source code (as I'd
been using the tool chain from UNSW, for which the source is missing).
Well, it turns out that there's an even newer one in PWB, and there are
complete source and binary PWB distributions in the TUHS archive!
I now have PWB/UNIX 1.0 running, and completely rebuilt from its own
sources, on one of my physical /23+ boxes (and, of course, in simh).
It's connected to my main (NetBSD) system using UUCP over a serial line.
Oh, and it runs the University Ingres RDBMS. :)
The write-up (and download) is at https://www.hamartun.priv.no/pwb.html
-tih
--
Most people who graduate with CS degrees don't understand the significance
of Lisp. Lisp is the most important idea in computer science. --Alan Kay
Here is a link to the 1897 bill of the Indiana State Legislature
that legislated a new value for $\pi$:
https://journals.iupui.edu/index.php/ias/article/view/4753/4589
-------------------------------------------------------------------------------
- Nelson H. F. Beebe Tel: +1 801 581 5254 -
- University of Utah FAX: +1 801 581 4148 -
- Department of Mathematics, 110 LCB Internet e-mail: beebe(a)math.utah.edu -
- 155 S 1400 E RM 233 beebe(a)acm.org beebe(a)computer.org -
- Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe/ -
-------------------------------------------------------------------------------
> The reason to use tab was file size for one
This is urban legend. The percentage of 512-byte blocks that
tabs would save was never significant.
(I agree that tabs and--especially--newlines can significantly
compress fixed-field formats from punched-card tradition, but
on the tiny Unix systems where tab conventions were
established, big tabular files were very rare.)
Tabs were a convenience for typists. Of course the tty driver
could have replaced them with spaces, but that would have
foreclosed important usage such as tab-separated fields and
run-time-adjustable tab stops tab-separated fields.
(I have run into latter-day trouble with selecting a space-substituted tab
from a screen, only to discover that I was copying or searching for spaces
instead of the tab.. That's not an intrinsic problem, though. Editors like sam
handle it without fuss.)
Doug
I compiled 4.4BSD to get pmax and sparc binary, from CSRG Archive CD-ROM #4
source code.
http://www.netside.co.jp/~mochid/comp/bsd44-build/
pmax:
- Works on GXemul DECstaion(PMAX) emulation.
- I used binutils 2.6 and gcc 2.7.2.3 taken from Gnu ftp site,
as 4.4BSD src does not contain pmax support part in as, ld,
gcc and gdb.
- Lack of GDB. I got rid of compile errors of gdb 4.16, but that
does not work yet.
- gcc included can not deal c++ static constructor. So, contrib/groff
can not be compiled. Instead, it uses old/{nroff,troff,eqn,tbl..}.
sparc:
- Works on sun4c. I use on SPARCstation 2, real hardware.
TME sun4c emulation can boot to single user, but it locks up in
middle of /etc/rc.
CSRG Archive CD-ROM #4's source code (just after Lite2 release) seems
have differences from CSRG's binary distributions before (2 times),
e.g. mount systemcall is not compatible.
I used NetBSD 1.0/sparc, NetBSD 1.1/pmax for 1st (slightly) cross
compiling. NetBSD 1.0/sparc boots and works well on TME emulator.
SunOS 4.1.4, Solaris7 works too, but this 4.4BSD binary doesn't..
-mochid
> From: John Floren
> Can anyone on the list point me to either an existing archive where
> these exist
The canonical repository for historic documentation online is BitSavers.
It has an almost-complete set of DEC stuff (both manuals and prints. QBUS
devices are at:
http://www.bitsavers.org/pdf/dec/qbus/
QBUS CPU's will be in the relevant model directory, e.g.:
http://www.bitsavers.org/pdf/dec/pdp11/1123/
and disk drives are in:
http://www.bitsavers.org/pdf/dec/disc/
I haven't checked your list, but I suspect most of them are there; I think the
ADV11-A prints are missing, though. You can either send the originals to Al
Kossow, or scan them for him; but check with him first, to make sure he doen't
already have them, just hasn't got around to posting them yet.
There's another site which indexes DEC online documentation:
https://manx-docs.org/
There are a very few things which aren't in Bitsavers, and can be found there.
> KFD11-A cpu
I assume that's a typo for 'KDF11-A'?
Noel
I've been hauling around a pile of DEC Field Maintenance Print Sets
for PDP-11 components for over a decade now, intending to see if
they're worth having scanned or if there are digital versions out
there already. Can anyone on the list point me to either an existing
archive where these exist, or an archivist who would be interested in
scanning them? They're full of exploded diagrams, schematics, and
assembly listings.
Here's the list of what I have:
Field Maintenance Print Set (17" wide, 11" high):
RLV11 disk controller
RL01-AK disk drive
ADV-11A (??)
Field Maintenance Print Set (14" wide, 8.5" high):
RL01 disk drive
DLV11-J serial line controller
RLV11 disk controller
KFD11-A cpu
KEF11-A floating point processor
PDP11/23
PDP11/03-L
Thanks,
John Floren
I could chip in with my own strong opinions about code formatting,
but I think others have already posted plenty of such boring off-topic
fluff.
A straight answer to Will's original question might be interesting,
though:
The oldest extant UNIX code samples I know are those the TUHS archive,
in Distributions/Research/Dennis_v3/nsys.tar.gz; they're a very old
kernel source tree. There are plenty of tabs there.
This matches my memories of the V7-era source code, and of what I saw
people like ken and dmr and rob and bwk and pjw typing in the not-
so-early days of the 1980s when I worked with them.
Tabs were generally eight spaces apart. In code, nobody worried about
the effects on long lines, because the coding style was spare and
didn't run to many deeply-nested constructs, so lines didn't get that
long. (Maybe it was considered a feature rather than a bug that
deep nesting and deep indentation looked messy, because it wasn't
usually a good idea anyway.)
I can't speak to original motivations, but I suspect my own reasons
for using tabs aren't too different:
-- It's quicker and faster to type than multiple spaces
-- When not at the start of the line, tabs more often preserve
alignment when earlier part of the line are edited
-- Back when terminals were connected at speeds like 110 or 300 bps
(I am old enough to have experienced that, especially when working
from home), letting the system send a tab and the local terminal
expand it was a lot faster, especially when reading code (more likely
to have lots of indentation than prose). Not every device supported
tabs, but enough did that it made a real difference.
UNIX didn't originate any of this. I used tabs when writing in FORTRAN
and ALGOL/SIMULA and MACRO-10 on the TOPS-10 system I used before I
encountered UNIX. So did all the other hackers I knew in the terminal
room where we all hung out.
I don't know the history of entab/detab. Neither appears to have
been around in the Research systems; they're not in V7 and they're
not in V10. V7 does.
As an aside, the V10 manual has a single manual page for col, [23456],
mc, fold, and expand. It's a wonderful example of how gracefully
Doug assembled collections of related small programs onto a single
page to keep the manual size down. Also of his gift for concise
prose: the first sentence is
These programs rearrange files for appearance's sake.
which is a spot-on but non-stodgy summary. I wish I could write
half as well as Doug can.
And as an almost-joke, it's a wonder those programs haven't all been
made into options to cat in modern systems.
Norman Wilson
Toronto ON
For sure, I've seen at least two interesting changes:
- market forces have pushed fast iteration and fast prototyping into the
mainstream in the form of Silicon valley "fail fast" culture and the
"agile" culture. This, over the disastrous "waterfall" style, has led to a
momentous improvement in overall productivity improvements.
- As coders get pulled away from the machine and performance is less and
less in coders hands, engineers aren't sucked into (premature) optimization
as much.
Tyler
On Sat, Jan 30, 2021 at 6:10 AM M Douglas McIlroy <
m.douglas.mcilroy(a)dartmouth.edu> wrote:
> Have you spotted an evolutionary trend toward better, more productive
> programmers? Or has programmer productivity risen across the board due to
> better tools? Arguably what's happened is that principle has been
> self-obsoleting, for we have cut back on the demand for unskilled (i.e.
> less capable) programmers. A broad moral principle may be in play:
> programmers should work to put themselves out of business, i.e. it is wrong
> to be doing the same kind of work (or working in the same way) tomorrowas
> yesterday.
>
> Doug
>
>
> On Tue, Jan 26, 2021 at 5:23 AM Tyler Adams <coppero1237(a)gmail.com> wrote:
>
>> Looking at the 1978 list, the last one really stands out:
>>
>> "Use tools in preference to unskilled help to lighten a programming task"
>> -- The concept of unskilled help for a programming task...doesn't really
>> exist in 2020. The only special case is doing unskilled labor yourself.
>> What unskilled tasks did people used to do back in the day?
>>
>> Tyler
>>
>>
>> On Tue, Jan 26, 2021 at 4:07 AM M Douglas McIlroy <
>> m.douglas.mcilroy(a)dartmouth.edu> wrote:
>>
>>> It might be interesting to compare your final list with the two lists in
>>> the 1978 special issue of the BSTJ--one in the Foreword, the other in the
>>> revised version of the Ritchi/Thompson article from the CACM. How have
>>> perceptions or values changed over time?
>>>
>>> Doug
>>>
>>>
>>> On Mon, Jan 25, 2021 at 7:32 AM Steve Nickolas <usotsuki(a)buric.co>
>>> wrote:
>>>
>>>> On Mon, 25 Jan 2021, Tyler Adams wrote:
>>>>
>>>> > I'm writing about my 5 favorite unix design principles on my blog this
>>>> > week, and it got me wondering what others' favorite unix design
>>>> principles
>>>> > are? For reference, mine are:
>>>> >
>>>> > - Rule of Separation (from TAOUP <
>>>> http://catb.org/~esr/writings/taoup/html/>
>>>> > )
>>>> > - Let the Machine Do the Dirty Work (from Elements of Programming
>>>> Style)
>>>> > - Rule of Silence (from TAOUP <
>>>> http://catb.org/~esr/writings/taoup/html/>)
>>>> > - Data Dominates (Rob Pike #5)
>>>> > - The SPOT (Single Point of Truth) Rule (from TAOUP
>>>> > <http://catb.org/~esr/writings/taoup/html/>)
>>>> >
>>>> > Tyler
>>>> >
>>>>
>>>> 1. Pipes
>>>> 2. Text as the preferred format for input and output
>>>> 3. 'Most everything as a file
>>>> 4. The idea of simple tools that are optimized for a single task
>>>> 5. A powerful scripting language built into the system that, combined
>>>> with
>>>> 1-4, makes writing new tools heaps easier.
>>>>
>>>> -uso.
>>>>
>>>