[pups] bringing up the fist C compiler
dmr at plan9.bell-labs.com
Fri Sep 6 15:35:26 AEST 2002
The chist paper on my home page is pretty complete (if telegraphic)
about bootstrapping B on the PDP-7 and later C (via B) on the -11.
It does not, indeed, explain TMG. Doug McIlroy did write TMG
(on the -7) first in assembly language, then bootstrapped
that into itself. Doug had used TMG to write EPL, the early
Pl/I compiler for Multics. I don't know whether he needed
to create a new implementation of TMG for that or whether
it was already running on the IBM 7094.
The paper also mentions (as does some of the other history stuff)
that Unix itself was written first in assembler on the GE-645
(running GECOS, not Multics at that point),
using a macro package that turned symbolic -7 instructions into
an object deck that could be rendered onto paper tape.
There is not much about TMG on the web that I can find
(and some of it is inaccurate).
Incidentally, TMG didn't immediately survive the move
to the -11. B was already in its own language,
and nothing else was using TMG besides itself.
Doug did revive it later just for fun, and it is in the
6th edition distribution--you can get it nearby!
Both on the -7 and the -11, TMG was implemented as
an interpreter for an abstract machine.
More information about the TUHS