From mboxrd@z Thu Jan 1 00:00:00 1970 From: jsteve@superglobalmegacorp.com (Jason Stevens) Date: Sat, 15 Oct 2011 12:14:51 -0400 Subject: [TUHS] b remnants? Message-ID: Yep, dungeon runs great on RT-11 ... I've docuemnted the experence here... http://virtuallyfun.superglobalmegacorp.com/?p=169 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@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 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 > 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!? Hello! 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."