diaries

Geneva Talk

Dated: 
1973

[Here are the contents of some visuals from Dijkstra's presentation in Geneva, 1973. Source: my archives, Box 11]

(1A)
Our programs serve to instruct our machines.
-->   A “mismatch” is blamed on the program.

(1B)
Our machines serve to execute our programs.
-->   A “mismatch” is blamed on the machine.

Tags: 

Strachey vs. Dijkstra :: Infinite vs. Finite

Dated: 
Spring 1973

In 1962 Christopher Strachey reasoned about ALGOL60 programs in terms of machine efficiency and, hence, to a non negligible extent he worked from the machine to the language. Dijkstra, by contrast, insisted on reasoning from ALGOL60 to the machine. In Strachey's words:

Tags: 

Things Dijkstra would like to do

Dated: 
18 January 1973

[The following words, written by Dijkstra in January 1973, are from Box 9 in my archive.]

Things I would like to do (they are not all unrelated).

1) write a book on the art of programming.

2) find a good notation for doing justice to representational abstraction.

3) investigate axiomatic definition of semantics with the aim of

Tags: 

Program Execution as a Living Tree

Dated: 
early 1963

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.

Tags: 

Dijkstra's "Computer Scientist" in 1982

Dated: 
1982

During Dijkstra's career at Eindhoven programming had developed from an art to a science. But, by 1982 there was still insufficient official recognition for this development. From Dijkstra's perspective, computer programmers had yet to be taken seriously in the world at large. This observation helps explain why, a year prior, he had warmly welcomed the new journal called Science of Computer Programming. In his words:

Tags: 

Dijkstra's "Software Engineer" in 1972

Dated: 
October 1972

John C. Reynolds wrote to me:

As Dijkstra was fond of pointing out, the community of people who call themselves “software engineers” is marred nowadays by an abundance of second rate work — so much so that others have come to disdain the term and call themselves “computer scientists”. But in the 60’s and 70’s, people such as Hoare, Wirth, and Dijkstra proudly and properly called themselves software engineers, and managed to be simultaneously rigorous and useful.

Tags: 

Book Reviews and Presentations

Dated: 
November 2012

Last year, I published my interview with Peter Naur in the booklet Pluralism in Software Engineering: Turing Award Winner Peter Naur Explains (Lonely Scholar, 2011). In the meantime, the following two reviews have come out:

Tags: 

Disobedient John

Dated: 
early 1962

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”.

Tags: 

Step-Wise Composition: Confusing Terminology?

Dated: 
June 1972

To clarify his step-wise program composition, Dijkstra used terms like “program layers” and “levels of abstraction” in his `Notes on Structured Programming' [1, Chapter 1]. These terms were not well defined as Dijkstra conceded later. As a result, Dijkstra's exposition — although extremely rich in content — was difficult to understand completely. See e.g. Denning's clarifying article on Structured Programming [3] or my interview with Liskov who mentions Parnas in this regard [2].

Tags: 

Step-Wise Composition: Generality Prevails

Dated: 
June 1972

In his 1972 `Notes on Structured Programming' [1, Chapter 1], Dijkstra introduced a methodology called step-wise program composition. He explained how to compose a program in minute steps, deciding each time as little as possible so that the correctness of each step is obvious.

Tags: 

Pages

 
© 2011–today by the respective authors. All rights reserved.