Algol Language

A portable language for scientific computations often credited with introducing many of the common syntax and structured programming conventions found in most modern programming languages.


ALGOL 58 was also known as the International Algebraic Language.

ALGOL 60 (AlgolSixty) was block-structured, nested, recursive and free form. These are features which the other language for scientific computations used at this time, Fortran [FortranLanguage], lacked. ALGOL 60 was also the first language to be described in BackusNaurForm. It provided CallByValue and CallByName semantics, but no support for user-defined types or I/O.

ALGOL 60 was small and elegant (see TonyHoareOnAlgolSixty), ALGOL 68 was big and complex (and rumored not to be implementable). (Falsely rumoured, it would seem, as there are today two different Open Source implementations available.)

DouglasCrockford described Algol60 as "the best [only good?] DesignByCommittee in the history of programming languages."

WikiPedia has a page with more information on Algol (see http://www.wikipedia.org/wiki/Algol_programming_language).


If you had access to a Burroughs, you would be a happy AlgolLanguage programmer. I did learn to program procedural programs in AlgolLanguage and was quite upset when I was obliged to use BasicLanguage and FortranLanguage in my Engineering course. Later, PascalLanguage was the most similar thing available, but running on MicroComputers. This was in 1984, for you that were not born. -- GeraldoXexeo

There is a quite nice Algol-to-C translator at http://www.gnu.org/software/marst/ Sian Leitch's Linux port of ctrans for Linux, called Algol68toC at http://www.sleitch.nildram.co.uk/algol68.html Marcen van der Veer's Algol68 Genie (Algol68G) interpreter is at http://www.xs4all.nl/~jmvdveer/algol.html

RacketLanguage includes an implementation of Algol 60 as a dialect.

Example of Algol-68 code (implements a Befunge interpreter): http://www.wave.co.nz/~glyn/befunge.a68

An interesting document Google turned up: http://www.cs.ru.nl/~kees/home/papers/psi96.ps.gz (cached version: http://216.239.59.104/search?q=cache:GyA2XlKzcQIJ:www.cs.ru.nl/~kees/home/papers/psi96.ps.gz+%22willem+louis+van+der+Poel%22&hl=nl)


Why did it fail (relative speaking) despite having many of the modern features we've grown to like? Ahead of its time? Too expensive? In some ways it shares a similar fate to SmallTalk: inspired many ideas and later languages, but failed to catch on by itself. (Lisp almost has this distinction, but remains a very popular "hobby" language.)

In a way it succeeded at its original purpose, as most academic descriptions of algorithms still use pseudocode that looks more like Algol than anything else. Lack of standardized I/O and difficult-to-implement CallByName semantics might lave played a role in its fade from physical use.


The SchemeLanguage is sometimes called the Algol of the LispFamily. See AlgolFamily.


CategoryProgrammingLanguage, CategoryAlgol


EditText of this page (last edited October 1, 2014) or FindPage with title or text search