> I'm fairly certain it was originally in BCPL.
>
> You could just drop a note to Bjarne Stroustrup and ask. :-)
On page 44 of _The Design and Evolution of C++_ (Addison-Wesley, 1994), Stroustrup says:
“However, only C, Simula, Algol68, an in one case BCPL left noticeable traces in C++ as released in 1985. Simula gave classes, Algol68 operating overloading, references, and the ability to declare variables anywhere in a block, and BCPL gave // comments.”
He says a bit more about // comments on page 93, including an example of how they introduced an incompatibility with C.
> From: Nick Downing
> I'm much more of a V7 guy and I think I would find V6 strange and
> compromised
De gustibus. I used it for many years, and am quite at home in it. I think
it's a marvel of functionality/size - at the time it came out, not much bigger
than DEC PDP-11 OS's, but with a 'big system' feel to it (which they
_definitely_ did not) - in fact, _better_ than most big systems of the day.
But I can see it would be rather too simple (and in the kernel inelegant,
code-wise, by today's standards - see below) for many. V7 is not that
different, in terms of user experience, from V6, though.
> I am thinking I will definitely have to apply some of these patches, or
> at least check how much they increase the code size by.
Sorry, that page is kind of a mish-mosh. Most of the stuff that's talked about
there is for user commands, not the kernel.
There are only a few kernel changes (lseek() and mdate(), and param.c so that
the new 'si' command can get thing from param.h without having to have it
compiled in), and they are all small.
> But probably my preferred approach is to calculate a patch V6 -> Mini
> Unix or V6 -> LSX and then try to apply that on top of V7.
I'm a little confused as to what your goal is here. Get V6 running on some
other architecture? Upgrade V6 for some goal which I am not aware of? I know
you probably said something in an earlier email, sorry, I don't recall.
Anyway, if you're going to do anything with V6 kernel code, you need to be
aware that it's really idiosyncratic - a lot of its written in a very early
dialect of C, and while things like 'a =+ b' -> 'a += b' and 'int a 1' -> 'int
a = 1' are pretty easy to fix, there are lots of intances of int's being used
as pointers to several different kinds of structures, etc, etc.
If you want to move an early, small Unix to something other than a PDP-11, V7
is probably a much better bet.
> As to moving to a V7 kernel and then adding TCP/IP I'm not sure if this
> is adviseable, as I was saying earlier I think it might be best to keep
> that functionality outboard from the kernel.
There are a couple of early TCP/IP's which ran outside the kernel, but I think
the standard Berkeley one might be a handful to move out.
Noel
> From: Charles Anthony
> Sigh. That tops my Multics bug report.
No way! You actually got the fix approved by an MCB! Much cooler! :-)
> BSD4.1 is circa 1890?
Well, it's old, but not _that_ old!! :-)
Noel
> Hi, we just read the second tape, which read without error.
> ...
> So at this point we have access to everything that was on that machine.
So, in the process of transferring this all to a TAR file, we found a bug in
BSD 4.1b. (The length of some directories whose last sector held only one
entry was being incorrectly set to the actual length of the directory, not a
multiple of the sector size.)
Anyone know where I can report a BSD 4.1b bug? :-)
Noel
PS: Although the Algol-60 isn't there, there is a nice LISP (good enough to
run The Doctor ... :-)
> From: Nick Downing
> is it possible for you to read the other tapes also?
Hi, we just read the second tape, which read without error. It appears to be
mostly the same stuff as the first, except that for some not-now-understood
reason, a lot of the sub-directories in /src/src (the directory that held most
of the sources) weren't there on the _first_ tape, but _are_ there on the
_second_. So at this point we have access to everything that was on that
machine.
It's too long a list to go through, but here:
http://ana-3.lcs.mit.edu/~jnc/tech/pdp11/tmp/csr2_edfiles.txt
is an edited list of the files on the machine. Most of /usr/ has been deleted,
since it contains a lot of personal files, the names of which I don't wish to
make public.
Alas, some of the code (e.g. the much of the MIT TCP/IP) was in some personal
directories; it will take me a while to curate all that.
Also, this machine did not contain everything that was done at MIT: one
particularly saddening lacuna is that the Algol-60 (written for the 'Intro to
programming for CS majors' course, 6.031 to those for whom that means
anything) isn't there, along with its documentation. With that being _such_ an
incredibly influential language, I'd really wanted to see a PDP-11 version
made available.
There's also an APL, and some missing subdirectories in the BCPL source
directory ('henke', 'richards' and 'tenex'). Etc, etc.
I have reached out to people at MIT, to see if a tape backup from the machine
where all that was can be found; I will keep you all posted if anything shows
up.
> I would be particularly interested in the early 8080 compiler
Yes, that's there ('c8080'), but object-only - it may have been something that was
purchased from an outside vendor. There does seem like there might be an 8080-back
end for the BCPL compiler.
Noel
> From: Paul Ruizendaal
> Great! I'd love to take a look at all that.
OK, it'll all be appearing once we have a chance to get organized (it's all
mixed in with personal files).
> That is very interesting. It may be related to the V6 with NCP from
> UoI/DTI.
I think it _is_ the V6 from UoI/DTI. The source has Gary (?) Grossman's and
Steve Holmgren's name on it, and the headers say they date from 1074-75.
> The printout does not have the kernel modifications with it, so it would
> be great if your archive does include that.
The archive does include the complete kernel, but i) the changes aren't listed
in any way (I forsee a lot of 'diffs', unless you just take the entire
kernel), ii) there's a file called 'history' which contains a long list of
general changes/improvements of the kernel not really related to TCP/IP, by a
long list of people, dated from the middle of '78 to the middle of '79. So it
looks like he started with a considerably modified system.
The only client code I see is User Telnet. (The MIT code has User and
Server Telnet and FTP, as well as SMTP, but it uses a wholly different
TCP interface.)
Noel
Side story on Unix related to Xview.
I go to a conference in San Jose for Sun users in the mid 80’s
and am discussing Xview with a few folks (names lost to memory).
A very nice person named Nancy Blackman walks up and joins
the discussion. We get to talking and she has a weird memory
bug and I’m willing to help her look at it. So we go to ‘her place’
which is her lab at Moffet field. We discuss her bug, find a fix
and I go back home to San Diego.
I mention that I met this very nice lady named Nancy Blackman
at the conference to my wife. Turns out my wife went to school
with Nancy before she moved to San Diego.
So, who else has weird stories of how Unix development or
Unix conferences had the side effect of making the world a
smaller place.
If this is too off topic, drop the conversation here.
David
> On Feb 1, 2017, at 1:52 PM, tuhs-request(a)minnie.tuhs.org wrote:
>
> Date: Wed, 1 Feb 2017 13:40:11 -0800
> From: Larry McVoy <lm(a)mcvoy.com>
> To: Noel Chiappa <jnc(a)mercury.lcs.mit.edu>
> Cc: tuhs(a)minnie.tuhs.org
> Subject: Re: [TUHS] shared memory on Unix
> Message-ID: <20170201214011.GG880(a)mcvoy.com>
> Content-Type: text/plain; charset=us-ascii
>
> On Wed, Feb 01, 2017 at 02:44:34PM -0500, Noel Chiappa wrote:
>>> From: "Steve Johnson"
>>
>>> The meetings went on for over a year, but _I NEVER MET WITH THE SAME
>>> PERSON TWICE!_ It seemed that the only thing the marketing group knew
>>> how to do was reorganize the marketing group...
>>
>> Shades of SI:Electric-Marketing (I _think_ that was its name) on the Symbolics
>> LISP Machine...
>>
>> (For those who never had the joy of seeing this, it randomly drew a bunch of
>> boxes with people in them on the screen in a hierarchy, connected them, and
>> then started randomly moving the boxes around... I wonder if the source
>> still exists - or, better yet, a video of it running? Probably not, alas.)
>
> Sun had reorgtool (orgtool) that had all the high up people down to
> directors I think and you pushed a button and it reshuffled them.
> It was a Xview app, anyone remember that toolkit (I sorta miss it).
>
> --lm
I hope this isn't too far off topic here.
I've been meaning to rename the few systems I administer with names
that reference famous (or at least somewhat well-known in the proper
circles) historical UNIX systems, but I have been unable to find any
lists of such names so have no real place to start. About the closest
I _was_ able to find is the ARPANET map[1] of the late 1970s that is
on Wikipedia and is occasionally circulated, but which gives mostly
architecture, location and links, not any system (host) names.
Short of unimaginative things like calling my home router IMP[2] or
things like that, can anyone either suggest names with a bit of
background (where they were, what hardware, what time period, etc.),
or point me toward online resources where I can find lists of those?
[1]: https://en.wikipedia.org/wiki/File:Arpanet_logical_map,_march_1977.png
[2]: https://en.wikipedia.org/wiki/Interface_Message_Processor
--
Michael Kjörling • https://michael.kjorling.se • michael(a)kjorling.se
“People who think they know everything really annoy
those of us who know we don’t.” (Bjarne Stroustrup)
> From: Mark Hare <markhare(a)buffalo.edu>
> I believe I have found the problem.
Excellent!
> Looking at the DL11-W, I saw that there is an uncovered trace on the
> circuit board just below the pins of the BERG connector. It appears
> that the exposed conductor ends of the cable were making contact with
> this trace, which shorted the entire cable together.
Shorting any set of DL11-W pins together still shouldn't have caused that
symptom, AFAICS.
I'm too lazy to pull out a DL11-W, and prints thereof, to check, but I suspect
that what actually happened is that trace carries some 'interesting' signal,
and it got grounded 'or something' by the exposed ends of the flat cable.
> I'm just glad that there doesn't appear to be any lasting damage.
Indeed! I was worried about that...
Noel
> From: Mark Hare
> For a more permanent solution, I designed a simple adapter board that
> connects to the BERG 40 connector on the DL11-W and converts it to a DB9
> serial port ... I also ordered a 40-pin (non-IDE) ribbon cable to
> connect the DL11-W to my adapter.
> When I connected everything, the 11/34 would start but no lights would
> appear on the front panel. I tried disconnecting the adapter but leaving
> the ribbon cable plugged into the BERG connector, but the problem
> persisted. When I removed the ribbon cable entirely, the unit powered on
> with no problems.
That's extremely odd. There isn't a pin on the DL11-W Berg connector which
should be able to cause anything like that kind of behaviour. The only
_possible_ thing I can think of, looking at the list of signals on the Berg,
is that you are grounding +5 (TT). Either that, or your DL11-W has some
serious issue?
> Since this is a straight-through ribbon cable, I don't see what could be
> causing this problem.
Me either. But clearly it's not just a straight-through ribbon cable....
I myself wouldn't have gone that route; one can obtain 40-pin IDE/DuPont (they
are all .1" spacing pins, and basically interchangeable, module keying)
connector shells, and female pins for same; I would have made a custom cable
to plug into the Berg with that, to a DE-9S or DB-9P connector (depending on
whether one wanted one wired as a DCE or DTE). (I myself make such cables, but
to a DB-25S connector, and then use a commercial DB-25P to DE-9S adapter when
needed.) Oh well...
Does the DL11-W still work, using the jumper cables kludge?
Noel