Dartmouth ALGOL 30

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Dartmouth ALGOL 30
ParadigmsMulti-paradigm: procedural, imperative, structured
Designed byWally Feurzeig
Thomas E. Kurtz
DeveloperDartmouth College
First appeared1961; 60 years ago (1961)
Implementation languageAssembly
Influenced by

Dartmouth ALGOL 30 was a 1960s-era implementation, firstly of the ALGOL 58 programming language, and then of ALGOL 60. ALGOL 30 is named partly after the computer it was designed for and ran on, a Librascope General Purpose and then Librascope General Precision (LGP-30) desk computer at Dartmouth College.

Since the limited size of the LGP-30 precluded a full implementation of ALGOL 60, certain of its features (arrays called by value, own arrays, strings, variable array bounds, and recursion) were omitted; but the implementers did include parameters called by name, using thunks,[1] and integer labels. They dubbed their work ALGOL 30, since it was for the LGP-30.[2] From this project emerged a small group of undergraduate students who were well equipped to perform further work in the development of computer languages. For instance, one student (Stephen J. Garland) discovered that compound statements and blocks could be included in the Samelson and Bauer scanning algorithm. This simple fact was not published until some years later.[3]

The ALGOL 30 system suffered one defect that hindered its wide use as a student-oriented language: it was a two-pass system. The intermediate code was similar to relocatable binary, but had to be punched onto paper tape. Compilations could be "batched," but the delays between presenting the source code tape and the final execution were too great to allow widespread student use. It was clear that a "load-and-go" system was needed. Thus was born SCALP, a Self Contained ALgol Processor

— Kurtz, 1962c, Oct.


  1. ^ (Ingerman, 1961; Irons and Wally Feurzeig, 1961)
  2. ^ Kurtz, 1962a, Feb., 1962b, Mar.
  3. ^ (The author has been unable to identify the source that he clearly remembers; the closest is Gries, 1968.)
  • Thomas E. Kurtz, SIGPLAN Notices 14(04), April 1979, including The first ACM SIGPLAN conference on History of programming languages (HOPL), Los Angeles, CA, June 1–3, 1978.

External links[edit]