The ALGOL Programming Language

Click below to go directly to a specific section:
History | Significant Language Features | Areas of Application | Sample Programs
Related Links | Printed References | Acknowledgments


ALGOL (ALGOrithmic Language) is one of several high level languages designed specifically for programming scientific computations. It started out in the late 1950's, first formalized in a report titled ALGOL 58, and then progressed through reports ALGOL 60, and ALGOL 68. It was designed by an international committee to be a universal language. Their original conference, which took place in Zurich, was one of the first formal attempts to address the issue of software portability. ALGOL's machine independence permitted the designers to be more creative, but it made implementation much more difficult. Although ALGOL never reached the level of commercial popularity of FORTRAN and COBOL, it is considered the most important language of its era in terms of its influence on later language development. ALGOLís lexical and syntactic structures became so popular that virtually all languages designed since have been referred to as "ALGOL - like"; that is they have been hierarchical in structure with nesting of both environments and control structures.

Significant Language Features

ALGOL was the first second-generation programming language and its characteristics are typical of the entire generation. First consider the data structures, which are very close to first generation structures. In ALGOL 60 the block structure was introduced: the ability to create blocks of statements for the scope of variables and the extent of influence of control statements. Along with that, two different means of passing parameters to subprograms; call by value and call by name. Structured control statements: if - then - else and the use of a general condition for iteration control were also features, as was the concept of recursion: the ability of a procedure to call itself.

One of the greatest impacts ALGOL 60 had was a result of its description as found in Naur (1963). A major contribution of this report was the introduction of BNF notation for defining the syntax of the language. Overall, ALGOL is considered to be perhaps the most orthogonal programming language, meaning it has a relatively small number of basic constructs and a set of rules for combining those constructs. Every construct has a type associated with it and there are no restrictions on those types. In addition, most constructs produce values. Several of ALGOLís other characteristics are listed below:

Areas of Application

ALGOL was used mostly by research computer scientists in the United States and in Europe. Its use in commercial applications was hindered by the absence of standard input/output facilities in its description and the lack of interest in the language by large computer vendors. ALGOL 60 did however become the standard for the publication of algorithms and had a profound effect on future language development.

Sample Programs

Related Links

Printed References

  1. Sebesta, Robert(1996). Concepts of Programming Languages, Third Edition. Addison Wesley Press.
  2. Bergin, Thomas and Gibson, Richard (1996). History of Programming Languages. Addison Wesley Press.


The best sources for information regarding the programming language ALGOL are textbooks which outline the history of the language. These books will also give details on why ALGOL is now looked at as a building block upon which many other languages were created. The Hello world! program obtained from
Hello, World Page!.
[Prev] [Home] [Next]

Last modified: 05:15 AM on 11/24/1996
This page has been accessed