The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: gregg.drwho8@gmail.com (Gregg Levine)
Subject: [TUHS] b remnants?
Date: Sat, 15 Oct 2011 12:41:27 -0400	[thread overview]
Message-ID: <CAC5iaNHDfiBOCs7Er101M__UX1kr1UctVoURSq+=gMUzEh7xpA@mail.gmail.com> (raw)
In-Reply-To: <C1DCD24F4CD3E011B4240003FF08577C5B0C@EXCHANGE>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 5698 bytes --]

On Sat, Oct 15, 2011 at 12:14 PM, Jason Stevens
<jsteve at superglobalmegacorp.com> wrote:
> 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 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!?
>
> 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."
>

Hello!
Well as it happens I looked up BCPL via Google and got this Wikipedia page:
http://en.wikipedia.org/wiki/BCPL That one lead to this one:
http://en.wikipedia.org/wiki/TX-2 which of course goes here:
http://en.wikipedia.org/wiki/TX-0 that one mentions how the PDP-1 came
about. The TX-0 is the direct ancestor to the PDP-1.

With today's FPGA technology someone should revive the TX-0 and the
TX-1 that way......


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



  reply	other threads:[~2011-10-15 16:41 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-15 16:14 Jason Stevens
2011-10-15 16:41 ` Gregg Levine [this message]
2011-10-17 16:18   ` Al Kossow
2011-10-17 16:29     ` Gregg C Levine
  -- strict thread matches above, loose matches on Subject: below --
2011-10-15  4:20 Jason Stevens
2011-10-15  4:37 ` Gregg Levine
2011-10-15  8:44 ` Michael Davidson
2011-10-14 18:23 Jason Stevens
2011-10-14 14:52 A. P. Garcia
2011-10-14 15:34 ` Derrik Walker
2011-10-14 15:53   ` Gregg Levine
2011-10-14 16:35     ` Derrik Walker
2011-10-14 19:17       ` Jeremy C. Reed
2011-10-14 20:08   ` John Cowan
2011-10-14 18:06 ` Tim Newsham
2011-10-15  3:57 ` A. P. Garcia
2011-10-15  4:57   ` Andru Luvisi
2011-10-15  8:54   ` Michael Davidson
2011-10-15 14:12     ` Gregg Levine
2011-11-01 16:24   ` Tim Bradshaw
2011-10-15  6:20 ` Greg 'groggy' Lehey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAC5iaNHDfiBOCs7Er101M__UX1kr1UctVoURSq+=gMUzEh7xpA@mail.gmail.com' \
    --to=gregg.drwho8@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).