[Date Prev] [Date Next] [Thread Prev] [Thread Next] Indexes: Main | Date | Thread | Author

[ba-unrev-talk] [Re: Dijkstra]

I thought I'd pass along this wonderful requiem note.    (01)

-------- Original Message --------
From: Stuart W Marks    (02)

Another obituary has appeared in The Times:    (03)

http://www.timesonline.co.uk/article/0,,60-378327,00.html    (04)

I was saddened to read of Dijkstra's passing.  The obituaries give a
but comprehensive review of his life and his achievements.  If one can
consider contribution to the language to be an achievement, the
excerpt from the UTexas obituary illustrates Dijkstra's achievements:    (05)

    Dijkstra enriched the language of computing with many concepts and
    phrases, such as structured programming, separation of concerns,
    synchronization, deadly embrace, dining philosophers, weakest
    precondition, guarded command, the excluded miracle, and the famous
    "semaphores" for controlling computer processes. The Oxford English
    Dictionary cites his use of the words "vector" and "stack" in a
    computing context.    (06)

To this I would add the phrase "... considered harmful" which appeared
the title of a letter to the editor of CACM entitled "Go To Statement
Considered Harmful."  [CACM V11 N3, March 1968, p. 147.  This is
at http://www.acm.org/classics/oct95/] In retrospect it's not clear to
whether the title was Dijkstra's or was provided by the editor. 
However, in
my mind the phrase "... considered harmful" is inextricably linked with
Dijkstra.  A google search of "considered harmful" turns up thousands of
hits, most of which appear as titles of computer-related polemics.    (07)

Dijkstra was also, if I may be forgiven, a notorious crank.  I have had
posted outside my office for some time a printout of EWD 498 [1975],
"How do
we tell truths that might hurt?" which contained the following:    (08)

  * FORTRAN --"the infantile disorder"--, by now nearly 20 years old, is
    hopelessly inadequate for whatever computer application you have in
    today: it is now too clumsy, too risky, and too expensive to use.    (09)

  * PL/I --"the fatal disease"-- belongs more to the problem set than to
    solution set.    (010)

  * It is practically impossible to teach good programming to students
    have had a prior exposure to BASIC: as potential programmers they
    mentally mutilated beyond hope of regeneration.    (011)

  * The use of COBOL cripples the mind; its teaching should, therefore,
    regarded as a criminal offence.     (012)

  * APL is a mistake, carried through to perfection. It is the language
    the future for the programming techniques of the past: it creates a
    generation of coding bums.    (013)

  * About the use of language: it is impossible to sharpen a pencil with
    blunt axe. It is equally vain to try to do it with ten blunt axes
    instead.    (014)

  * The use of anthropomorphic terminology when dealing with computing
    systems is a symptom of professional immaturity.    (015)

Although EWD498 is not among them, Dijkstra hand-wrote many of his
with a fountain pen.  Perhaps another achievement is the ability to
parody.  In the mid-1980's, Luca Cardelli developed a PostScript font
mimics Dijkstra's hand lettering quite faithfully, and distributed it
with a
fictitious EWD-series document using that font.  I've attached a PDF
of it for your enjoyment.    (016)

I'll close with one of Dijkstra's quotes that has made it into my quotes
file:    (017)

    "If debugging is the process of removing bugs, then programming must
     be the process of putting them in."
        -- Edsger W. Dijkstra    (018)

s'marks    (019)

Attachment: ewd1023-0.pdf
Description: ewd1023-0.pdf