[COFF] ancient macros, machine code translation, as mental architecture models
Aron Insinga
aki at insinga.com
Wed Jul 17 05:55:52 AEST 2024
On 7/15/24 15:39, John Levine wrote:
> It appears that Douglas McIlroy <douglas.mcilroy at dartmouth.edu> said:
>> In 1959, ...
>> We never considered anything but recursive expansion, where macro
>> definitions can contain macro calls; thus the TX-0 model comes as quite a
>> surprise. We kept a modest stack of the state of each active macro
>> expansion. We certainly did not foresee that within a few years some
>> applications would need a 70-level stack!
> As the PDP-1 Macro imeplementation manual said about the macro feature:
>
> It is the weakest
> in that it is quite inflexible and does not incorporate any of the more significant improvements
> in assembler technology that have occurred since the logic was first written in 1957.
>
> The PDP-1 was not a very big machine, only 4K words and the only
> standard I/O device was paper tape, so no overlays or multiple passes.
> I can imagine that while they knew how to write a better macro
> processor, they didn't want to use up the memory it would have needed.
>
> Bitsavers has a bunch of memos about the TX-0.
>
> Memo 39 describes TX-0 assembler as of 1962, which had real macros
> that could insert arbitrary strings, as they show in an example on
> pages 10-11.
>
> https://bitsavers.org/pdf/mit/tx-0/memos/M-5001-39_MIDAS_Nov62.pdf
>
> There are earlier memos about MACRO in 1959 and 1961 which suggest a weaker
> macro facility but don't have details.
>
> R's,
> John
At MIT they wrote two assemblers on the TX-0, and retargeted/ported both
of them to the PDP-1. (The machines were in adjacent rooms at the
time. Their architectures were very similar.)
* MACRO (macro expansion by limited partly-assembed memory words). DEC
adopted MACRO, but its later MACRO assemblers do not seem to be at all
based on that one.
* Midas (generalized macro expansion by inserting a character
sequence). MIT chose Midas for future work, and they rewrote it for the
PDP-6, so that's what you find on ITS.
One of these retargets/ports was a challenge by Jack Dennis to a group
of 4 or 5 students (the original hackers from the Tech Model Railroad
Club) to do it over a weekend.
I agree, there is a lot of great stuff in these memos, from both MIT and
from DEC, and in the oral histories done by the Computer History Museum
and/or the Smithsonian.
Bitsavers also has the hardware details, although they are in a very old
notation, more abbreviated circuit schematics than logic diagrams..
- Aron
More information about the COFF
mailing list