Algol ist eine Programmiersprache, die ab der Ende der 1950er Jahre entwickelt wurde. Der Name Algol ist eine Kurzform für Algorithmic Language.
ALGOL entstand aus dem Wunsch, eine Alternative zu den damals vorherrschenden Programmiersprachen FORTRAN und COBOL zu schaffen. Sie sollte eine eindeutige Spezifikation haben und sowohl für kaufmännische als auch für wissenschaftliche Anwendungen verwendet werden können. Die Sprache selbst wurde von einem Komittee von Informatikern entworfen (u.a. John Backus, Niklaus Wirth und Edsger Dijkstra).
Algol 58
Algol 58 wurde in äussert kurzer Zeit definiert und hatte nach Ansicht der Autoren noch erhebliche Schwächen. Die Sprache wurde deshalb schon bald von Algol 60 abgelöst. Algol 58 führte jedoch die grundsätzliche Notation von Algol-Programmen ein.
Algol 60
Algol 60 ist die erste Sprache, deren Formale Grammatik mit Hilfe der Backus-Naur-Form definiert wurde. Diese Notation wurde von John Backus während eines Kommitee-Treffens erstmals vorgestellt.
Zum ersten Mal in prozeduralen Sprachen erlaube Algol 60 Rekursion.
Von COBOL wurde die Möglichkeit übernommen, Datentypen selbst zu definieren.
Algol 60 führte das Prinzip der Blockstruktur und der Sichtbarkeit von Variablen in ein:
- Blöcke sind gruppieren Programme in logisch zusammenhängende Elemente
- Blöcke können verschachtelt werden
- Auf eine Variable, die in einem Block definiert wird, kann nur in diesem Block selbst und in untergeordneten Blöcken zugegriffen werden
Algol 68
Algol 68 sollte Algol 60 verbessern, um den Anforderungen der Industrie besser zu entsprechen. Im Laufe der Definition wurde jedoch Kritik laut, dass Algol 68 zu überfrachtet sei. Niklaus Wirth stellte als Gegenkonzept dazu Algol-W vor (daraus entstand Pascal).
Bedeutung von Algol
Wirtschaftlich war Algol weniger bedeutsam als FORTRAN oder COBOL. Allerdings beeinflusste es stark spätere Programmiersprachen zum Beispiel: