On 2015-08-12 1:39 PM, Nigel Williams wrote:
On 12 Aug 2015, at 11:24 pm, Paul Koning
<paulkoning at comcast.net> wrote:
On Aug 11, 2015, at 10:23 PM, Mark Kahrs
<mark.kahrs at gmail.com> wrote:
For those of you who might be interested, I sent a listing of the B6700
ALGOL compiler source code to the CHM.
I did find a copy of the B6500 ESPOL
compiler online recently.
In the B5500 emulator repo:
https://github.com/pkimpel/retro-b5500/tree/master/source
It is still to be proofed though.
I'm surprised no one has mentioned the
Burroughs extensions to ALGOL to
optimise|ize the use of the native string instructions.
Did Algol come after the hardware? I always thought of the hardware as having been
customized for their Algol, but admittedly I don?t actually know which is chicken and
which is egg.
It is suggested in the oral history at
UMN.edu that the B5000 was
designed as an
ALGOL machine and Burroughs had the idea that only
compilers would generate machine code, so they made the B5000 compiler
friendly, and the system would have an OS to manage resources, so it was
designed around drum/disk being an intrinsic part of the system.
For more on this, see "Classic Operating Systems," Per Brinch Hansen,
which reprints the paper "Operating System for the B 5000", Clark
Oliphint (1964).
"Two of the major B 5000 design objectives were (1) that all
programming was to be done in ALGOL and COBOL, and (2) that the
operation of the system was to be directed by a Master Control Program
(MCP) which would relieve the operator and---especially---the programmer
of virtually all the inefficient and error-causing details of peripheral
unit designation, memory area assignment, and so on. The simultaneous
and coordinated design of the computer and the programming system has
produced a hardware-software system so well integrated that all B 5000
users employ the standard programming system (with minor modifications
for special applications in a few cases). It has been the experience of
B 5000 users that the exclusive use of compiler languages in programming
gives advantages in documentation, program preparation, and debugging
which cannot be over emphasized. ..."
--Toby