(Grolegians should know by now that when someone mentions one of my magic
words, like B6700, I will awaken.)
From Memory: B6700Algol is
'Algol 68'.
Take it from the guy that wrote major portions of the
compiler as well as the BNF syntax as found in the manual you learned form:
your memory is not correct. The B6700 Extended Algol language was based on
Algol 60, not Algol 58 (that was called BALGOL, for the Burroughs 220), nor
Algol 68 (which was too late for the the B6700).
The Algol 60 language, like
FORTRAN and COBOL, its contemporaries, did not have APIs. The math functions
were built in (intrinsic to) the core language, and it was the compiler's job to
generate what's now called ABI code, for any such items that were
support-library features. Our compilers tended to handle simple stuff, like ABS,
in line, except as an actual parameter of type REAL PROCEDURE(REAL
value).
Effective with the MCP Mark II, io was handled by our homebrew
object-oriented file-access system. The compiler generated a file-object token
for each file, and the OS filled in method tokens for the appropriate methods,
depending on attributes of the file, and its state and use history within the
program. The compiler generated method-call code in the ABI for each io
statement in the program. --- --Bill. NAL: question the answers,
especially mine. [ Reply to This | Parent | # ]
|