In the first half of 1963, Dijkstra described the execution of a program as a living “tree” that can grow “branches” and “twigs”. As the tree gets older — that is, as the execution of the program progresses — branches and twigs can fall off the tree, and others can grow in their place. Dijkstra used the metaphor of the living tree to unify three seemingly disparate topics: dynamic memory management, subroutine invocations, and multiprogramming.
In early 1962, Edsger W. Dijkstra presented an analogy of a classroom teacher calling upon one of her pupils. By doing so, he conveyed some subtleties of “dynamic memory management” and “concurrent process behavior”.
“I still remember it well, the day my future husband entered my life”, Ria Debets-Dijkstra recalls. “He was a good-looking man, 20 years of age. He entered our Computing Department with a cane!” . The Computing Department was part of the newly founded Mathematical Centre in Amsterdam. Ria Debets-Dijkstra had already been working there for two years before she saw Edsger Dijkstra on that eventful day in 1951. Dijkstra officially joined the Computing Department in March of the following year.
Toward the end of my paper `Dijkstra's Rallying Cry for Generalization ...' I briefly describe the work of Irons and Feurzeig. These two men had by 1960 also implemented ALGOL60's recursive procedure just like Dijkstra and Zonneveld. Their solution, however, was very different from the solution proposed by Dijkstra and Zonneveld.
In his technical report (MR 34) of October 1961, Dijkstra explained why he viewed a good programming language to be one of a small number of very general concepts. To clarify, he used an analogy between mathematics and programming, an analogy which in later years would be scrutinized in several ways by his contemporaries. (See e.g. MacKenzie's 2004 book Mechanizing Proof: Computing, Risk, and Trust.)
Among Dijkstra's possessions is the booklet of the 1961 Western Joint Computer Conference which was held in Los Angeles. The booklet contains the abstracts of the presented lectures, including:
- J. McCarthy's `A Basis for a Mathematical Theory of Computation' and
- R.S. Barton's `A New Approach to the Functional Design of a Digital Computer'.
The abstract of the latter paper is briefly discussed here because it may help us understand how ALGOL 60 influenced hardware design in the USA during the early 1960s.
© 2011–today by the respective authors. All rights reserved.