>>>> "John" == John Foust
<jfoust at threedee.com> writes:
John> At 01:38 PM 5/11/2005, Tom Jennings wrote:
> Oh yeah, it has !TERRIBLE! features in it!
Computed gotos are one
> of the more amusing, and some of the side effects of it are just
> plain bizarre.
John> The inverted syntax of "goto 60 if expression" was another that
John> caught my eye;
??? There isn't any such syntax in Algol. Maybe you misread a
statement that had a conditional expression in it -- the Algol
predecessor to what in C is (foo<0) ? 1 : 2 -- but without the
unnecessary different tokens.
> But you have to feel for the poor bastards, trying
to work out
> these issues where you don't even have a character mapping you can
> rely on. All the quoting/escaping bizarreness, that the unix Algol
> interpreter a60 supports. Ugh.
John> One of the aforementioned references points out that Algol
John> preceded ASCII and influenced its development. At one point,
John> they wanted 'do' and other keywords to be their own character
John> (!) so you could have 'do' as a variable name?
You seem to be talking about APL. Algol 60 has keywords distinct from
variable names, but doesn't say how to implement that. Some
implementations have used quoting, some have used reserved words. In
Algol 68, that issue was addressed explicitly rather than left
unanswered.
I don't see how Algol 60 had anything to do with ASCII. Certainly the
ASCII character set (never mind the early versions) don't match what
the Algol 60 spec uses -- things like the sign for <= or for boolean
equivalence or "not" didn't show up in standard character sets until
Unicode.
paul