Unue lingvo kun tia nomo aperis en 1958 por tri celoj: esti laŭeble proksima
al la tradicia matematika simbolaro, esti facile legebla por iĝi rimedo por
publikigo de algoritmoj kaj esti tradukebla
en maŝinlingvojn. El pluraj sinsekvaj
projektoj konsiderindan disvastiĝon ricevis la lingvoj ALGOL-60, ALGOL-W kaj
ALGOL-68. - ALGOL-60
- Unua programlingvo rigore difinita, ĝi
aperis komence de la jaroj 1960aj (la definitiva «Reviziita raporto pri la
algoritma lingvo ALGOL-60» eldoniĝis en 1962). La ĉefaj atingoj de tiu
projekto estis la sintaksa difino per formala gramatiko (la formo de Backus—Naur), distingado
de diverscelaj varioj de la ekstera prezento
de programtekstoj (tipografia prezento, etalona prezento, maŝina prezento),
la nocioj de bloko kaj regiono de la deklaroj, la meĥanismoj de pasigo per valoro kaj pasigo per algoritmo, rekursiaj
proceduroj, dinamikaj tabeloj, tre
riĉaj iteracioj. La ĉefa malavantaĝo de
ALGOL-60 estis manko de normigita eneligo kaj de
influa industria subteno.
- ALGOL-W
- Neoficiala derivaĵo de ALGOL-60
kreita de N. Wirth kaj C. H. R.
Hoare en 1966. ALGOL-W provizis rimedojn por traktado de signoĉenoj, en ĝi unue aperis la okazelekta ordono, pasigo per rezulto kaj pasigo per valorrezulto. Dum kelka
tempo ALGOL-W estis konsiderinde disvastigita en la universitatoj.
- ALGOL-68
- Ĝeneralcela programlingvo kreita sub la aŭspicioj de IFIP
kiel pluevoluigo de ALGOL-60. Karakteriza trajto de ALGOL-68 estas la
orta kunmetemo (angle orthogonal design), la principo
ebliganta konstrui la lingvon mem kaj la programojn en ĝi prezentatajn kiel
liberan kombinaĵon de minimumaj, ĝeneralaj, reciproke nedependaj
(«ortaj») lingvoelementoj. Tio precipe koncernas la manieron difini datumtipojn kaj ordonojn. ALGOL-68 apartenas al tiu sama
programlingva generacio, kiel ĝia rivalo PL/I, kaj
egale kombinas la rimedojn de «scienca komputado» kun tiuj por
listotraktado kaj plurtaskado. Male ol
ALGOL-60, ALGOL-68 normigas la eneligon. Paradokse, inter la kaŭzoj
malhelpintaj disvastiĝon de ALGOL-68, oni ofte indikas ĝian tro rigoran
difinon, kiu malfaciligas supraĵan trarigardon: kontraste kun tiu malfacila
teksto, la difinoj de Pascal (kvankam plenplenaj
je eraroj) ŝajnis multe pli ĝua legaĵo.
Rimarkinda trajto de ALGOL
(kaj speciale de ALGOL-68) estas ĝia atento pri la problemo de naciaj
variaĵoj de la lingvo. Tiu trajto de ALGOL-68 kvazaŭ invitas nin provi
Esperantan «nacian variaĵon» de la lingvo.