On 13/01/2025 21:11, Paul Koning via cctalk wrote:
On Jan 13, 2025, at 3:57 PM, ben via cctalk
<cctalk(a)classiccmp.org>
wrote:
> On 2025-01-13 12:18 p.m., Brent Hilpert via cctalk wrote:
>
> Huh? Are you saying ALGOL (60) doesn't have [ ] ???
>
> Remember that ALGOL predates ASCII. There weren't standard character sets at the
time. Also, plenty of people have implemented ALGOL on ASCII or EBCDIC machines; it's
not hard to think up a way of dealing with the keywords and operators.
This is very true. The first (and only) Algol I use was on the Elliott
803 which had Baudot 5-hole paper tape (and teleprinters). It was the
first commercial Algol compiler ever written, and included real world
extensions like PRINT, READ and MOVETO, DRAWTO and stuff for the plotter.
Because of the Baudot there was no ';' to be seen, never mind { and }.
And no lower case, of course. The end of statement was indicated with an
apostrophe (or single quote), and things like >= were GREQ, LESSEQ or
what-have-you. * was multiply (something that stuck this day!) and **
was exponent. Remember that before ASCII, a multiply and divide symbol
was common, as well as single character >= <= and != - if you had a
fancy enough terminal! DIV was divide (I don't think there was a '/'
available anyway)
The worst was the open and close quote characters around strings, which
were replaced by £ (pound sign) and ? (question mark).
I'm going from memory here, but this is something close to what I mean:
|PRINT THE 5* TABLE' BEGIN INTEGER I, P' SWITCH SS := L1; I := 1' L1: P
:= I * 5' PRINT £5 * ?, I, £=?, P' I = I + 1' IF I LESSEQ 12 THEN GOTO
L1' END'|
Because it looked so different to any other Algol I assumed it was Algol
58, until Tony Hoare (the author) corrected me that it was Algol 60 when
I said how much I'd admired it about 35 years later. Embarrassing!
There was an Algol 68 compiler released with the Research Machines 380Z,
and S-100 CP/M machine used in universities (and schools) in England as
the government approved computer.