"ALGOL 60 at 60: The greatest computer language you've never used"

It’s just possible there are some here for whom the headline doesn’t apply, but it’s an interesting article in any case:

Here’s a good quote on the much-maligned successor:

The last edition of The ALGOL Bulletin was published in 1988, with its editor noting: “ALGOL 68 as a language is very stable. It is used and loved by those who understand its benefits, and ignored (or misquoted) by the rest.”

On the influence:

ALGOL 60 also heavily influenced the Combined Programming Language (CPL), developed in the 1960s but not implemented until the following decade. CPL in turn led to Basic CPL (BCPL), from which B descended. The B language was further developed to become C.

There’s a video within of the Elliott 803 at TNMoC running its Algol 2 compiler from paper tape:

Peter Naur wrote a retrospective “Paper: the European side of the last phase of the development of Algol 60”

5 Likes

I have written just one Algol program - oddly enough on an Elliot 903 - which I had access to in the summer of 1980 when I was on a job experience project while at uni.

And at the risk of straying OT a little…

The job was in the Clinical Chemistry department at the Edinburgh royal Infirmary and '903 was the back computer to the ICL mainframe to process blood analysis tapes - the code I was updating was in a sort of assembler (called SIR) but I had time to “play” with the '903 and found the Algol tapes, so wrote a trivial “Hello, world” program in Algol just because it was there.

I’ve also met the venerable Peter Onion at TNMoC - vastly knowledgeable on the subject of both Algol and the Elliot 803 there - He even has a really nice emulator of the '803 that runs well on a Raspberry Pi.

http://www.peteronion.org.uk/Elliott/

-Gordon

2 Likes

Excellent - I’ve spent a couple of hours at least chatting to Peter at TNMoC, and saw an earlier version of his emulator. I see this on the page you linked, skeuomorphic might be the word:
image

As the article mentions the lack of commonly defined input/output functions (well, the Report mentions at least READ, PRINT, TYPE, WRITE), it may be worth noting that Algol wasn’t just a programming language, it was at first a problem description language, which could also be used as a programming language thanks to particular hardware representations of the language. E.g., when used as an abstract language, Greek letters may be used for identifiers, while a hardware representation may choose to put keywords in single quotes (as the PDP-8 implementation did). The relationship of a hardware representation to the abstract language isn’t much unlike the relation of APL as a programming language to the original mathematical notation. So for Algol as an abstract language, the lack of a rigorous definition of a standard I/O library may be forgivable, while it’s certainly a problem for the programming language.

Personal note: Algol 60 was actually my first programming language, but I only programmed on paper with it, with no compiler accessible to me. I have always been impressed with the aesthetics of an Algol program.

P.S.: A copy of the Revised Report on the Algorithmic Language Algol 60 is problably the oldest web page by me still around: https://www.masswerk.at/algol60/report.htm

1 Like

My first real computer was the university’s Burroughs B6700 so I did some Algol programming. Since Burroughs gave its clients all the source code, the group I worked with adapted their extended Algol compiler to generate Motorola 6800 assembly. They had a homebrew 6800 machine that looked like a terminal to the B6700 and multiplexed a bunch of odd peripherals. So I would build a specific adapter card (for the two TV Typewriters or for the optical card reader for student exams, for example) and then write the drivers in the patched Algol.

3 Likes

There’s another take on this anniversary on The Shape of Code blog:
Happy 60th birthday: Algol 60

Language family trees ought to have Algol 60 at, or close to their root. But the Algol 60 descendants have been so successful, that the creators of these family trees have rarely heard of it.

In the US the ‘military’ language was Jovial, and in the UK it was Coral 66, both derived from Algol 60 (Coral 66 was the first language I used in industry after graduating). I used to hear people saying that Jovial was derived from Fortran…

Algol compiler implementers documented their techniques (probably because they were often academics); ALGOL 60 Implementation is a real gem of a book, and still worth a read today (as an introduction to compiling).

1 Like

Thanks for the links, esp. “ALGOL 60 implementation”!

I worked with ALGOL 60 very briefly, on a CDC-3300, but then I discovered SIMULA-67, which is very much a superset of ALGOL 60, but with capabilities that almost seemed magical in the late 1970s.

4 Likes