[TUHS] b remnants?

Jason Stevens jsteve at superglobalmegacorp.com
Sun Oct 16 02:14:51 AEST 2011

Yep, dungeon runs great on RT-11 ... I've docuemnted the experence here...


Building the fortran compiler was... an adventure onto its own, but luckily
I found some documentation @ bitsavers, and could ask on the PDP11 lists for
help... I'm amazed it compiled and runs! .. 

Oh and TripOS is the BCPL based OS that ran on all kinds of machines, it was
very portable, the best known port would be AmigaDOS for the Commodore
Amiga.  I wonder if it was licensing fees and BCPL/TripOS being based in the
UK what seperated them from C/Unix... I guess we'd be living in the B++, B#
and ObjectiveB world if it wasn't for DMR's wonderful world of C .. :)

-----Original Message-----
From: Gregg Levine [mailto:gregg.drwho8 at gmail.com]
Sent: Saturday, October 15, 2011 12:37 AM
To: tuhs at minnie.tuhs.org
Cc: Jason Stevens
Subject: Re: [TUHS] b remnants?

On Sat, Oct 15, 2011 at 12:20 AM, Jason Stevens
<jsteve at superglobalmegacorp.com> wrote:
> Wasn't the other 'advantage' of threaded/pcode that it'd be smaller than a
> native executable?
> I know it's out of left field, but building Dungeon on RT-11, you have to
> use the treaded compiler, and I assume it was a space thing.. Just as on
> MS-DOS (Yeah I know...) a save for fitting stuff in 64kb for the later
> compilers was to compile to p-code..
> Wikipedia gives p-code for Pascal a timeframe of the 'early 70's and
> attribes the whole interpeted code as O-Code for BCPL ....
> I wonder if anyone ever did save any TripOS tapes for the PDP-11.....
> -----Original Message-----
> From: A. P. Garcia [mailto:a.phillip.garcia at gmail.com]
> Sent: Friday, October 14, 2011 11:58 PM
> To: tuhs at minnie.tuhs.org
> Subject: Re: [TUHS] b remnants?
> On Fri, Oct 14, 2011 at 9:52 AM, A. P. Garcia
> <a.phillip.garcia at gmail.com> wrote:
>> In memoriam, I read The Development of the C Language:
>> http://cm.bell-labs.com/who/dmr/chist.html
>> It talks a bit about how B was originally implemented somewhat like
>> ETH Pascal (p-code). Are there any B interpreters or programs in the
>> archive?
> What intrigued me about this is that it's such an early example of an
> abstract machine running as an interpreter. BCPL, roughly
> contemporaneous, used ocode as an intermediate language, but it seems
> this was intended to be further translated into assembly. While it's
> possible to interpret ocode, in practice it seems this was rare, if it
> was done at all. Almost everything I've read about abstract/vitual
> machines traces its roots back to the following source:
> James R. Bell. 1973. Threaded code. Commun. ACM 16, 6 (June 1973),
> 370-372. DOI=10.1145/362248.362270
> http://doi.acm.org/10.1145/362248.362270
> Here's where dmr mentions implementing B using this technique:
> The B compiler on the PDP-7 did not generate machine instructions, but
> instead `threaded code' [Bell 72], an interpretive scheme in which the
> compiler's output consists of a sequence of addresses of code
> fragments that perform the elementary operations. The operations
> typically-in particular for B-act on a simple stack machine.
> Note he says it was published in 1972, when it actually appeared in
> print in 1973 (same page numbers). Two paragraphs later he writes:
> By 1970, the Unix project had shown enough promise that we were able
> to acquire the new DEC PDP-11. The processor was among the first of
> its line delivered by DEC, and three months passed before its disk
> arrived. Making B programs run on it using the threaded technique
> required only writing the code fragments for the operators, and a
> simple assembler which I coded in B; ; soon, dc became the first
> interesting program to be tested, before any operating system, on our
> PDP-11. Almost as rapidly, still waiting for the disk, Thompson
> recoded the Unix kernel and some basic commands in PDP-11 assembly
> language. Of the 24K bytes of memory on the machine, the earliest
> PDP-11 Unix system used 12K bytes for the operating system, a tiny
> space for user programs, and the remainder as a RAM disk. This version
> was only for testing, not for real work; the machine marked time by
> enumerating closed knight's tours on chess boards of various sizes.
> Once its disk appeared, we quickly migrated to it after
> transliterating assembly-language commands to the PDP-11 dialect, and
> porting those already in B.
> The abstract machine is also mentioned in Thompson's "Users' Reference
> to B", dated January 7, 1972. If the 1970 date is correct, they were
> using this technique some three years before most of the computing
> world knew about it!?

This discussion is beginning to strike a heck of a lot of chords.
Jason what is this TripOS you are describing here about? And did you
actually get Dungeon to work?

Gregg C Levine gregg.drwho8 at gmail.com
"This signature fought the Time Wars, time and again."

More information about the TUHS mailing list