On Apr 14, 2015, at 12:40 PM, Robert Armstrong <bob
at jfcl.com> wrote:
Are you sure that Modula-2 came from the PDP-11?
I don?t remember it there.
The comments in the source for the VAX compiler say it was?
The VAX Pascal compiler was adapted from the ETH
Pascal compiler for the CDC 6000 mainframes;
the generated code from VAX Pascal V1 made this blatantly obvious.
Do you mean VAX or PDP-11? Either way, I'm not surprised - the DEC-10 Pascal was a
modified copy of the 6000 version. Somewhere I have the source for the PDP-10 compiler;
it came from DECUS and DEC never offered an "official" Pascal for 36 bits AFAIK.
I used the PDP-10 Pascal in college; don?t remember its ancestry.
But yes, I meant VAX Pascal. I tried out V1, briefly, and looked at its generated code.
It was obvious by inspection that the code generator was simply the CDC 6000 code
generator, very slightly tweaked to emit VAX opcodes instead. For example, when you see
code sequences like:
movl foo,r1
movl bar,r2
addl3 r1,r2,r3
movl r3,foo
it?s pretty obvious you?re not looking at a serious VAX compiler. That is correct and
optimal code for a 6000, but not exactly so for a VAX, or a PDP-11 for that matter.
I do believe this sort of thing was fixed in the next release, but it was pretty hilarious
to see in V1.0.
paul