Aihuxl.125 net.general utzoo!decvax!harpo!ihnss!ihuxl!ignatz Thu May 6 04:32:54 1982 Dr. Dijkstra speaks... The following is a "reprint" from an SIGPLAN issue. All appropriate copyrights are preserved; if Dr. Dijkstra is upset about my entering this on the net, I would welcome the legal problems just to speak with him. In fact, if he ISN'T upset, I'd still be tickled to speak with him...with all respects: (SIGPLAN) Editor's note: This article is reprinted here with the kind permission of Prof. Dijkstra and Springer-Verlag Publishers. It was originally issued as Memo EWD 498 and is part of a manuscript for a book, "Selected Writings on Computing: A Personal Perspective.". I solicited permission to reprint this memo and have made two changes in the text. The changes are in square brackets and the following note applies to both: Here the text is less explicit than the original; at the editor's request and with the author's consent, the original phrase has been translated into the local dialect of SIGPLAN Notices. Replies to this article will be published in a group in a future issue. Prof. Dijkstra will be given an opportunity to comment on replies. (Submission note: replies should go to SIGPLAN...) Prof. Dr. Edsger W. Dijkstra Burroughs Research Fellow 18th June 1975 Plataanstraat 5 5671 AL Nuenen The Netherlands Sometimes we discover unpleasant truths. Whenever we do so, we are in difficulties. Supressing them is scientifically dishonest, so we *must* tell them, but telling them, however, will fire back on us. If the truths are sufficiently unpalatable, our audience is physicaly incapable of accepting them and we will be written off as totally unrealistic, hopelessly idealistic, dangerously revolutionary, foolishly gullible or what have you. (Besides that, telling such truths is a sure way of making oneself unpopular in many circles, and, as such, it is an act that, in general, is not without personal risks. Vide Galileo Galilei...) Computing Science seems to suffer severly from this conflict. On the whole, it remains silent and tries to escape this conflict by shiftint its attention. (For instance: with respect to COBOL you can really do only one of two things: fight the disease or pretend that it does not exist. Most Computer Science Departments have opted for the latter easy way out.) But, Brethren, I ask you: is this honest? Is not our prolonged silence fretting away Computing Science's intellectual integrity? Are we decent by remaining silent? If not, how do we speak up? To give you some idea of the scope of the problem, I have listed a number of such truths. (Nearly all computing scientists I know will agree without hesitation to nearly all of them. Yet we allow the world to behave as if we did not know them....) * * : Programming is one of the most difficult branches of applied mathematics; the poorer mathematicians had better remain pure mathematicians. The easiest machine applications are the technical/scientific computations. The tools we use have a profound (and devious!) influence on our thinking habits, and, therfore, on our thinking abilities. FORTRAN, "the infantile disorder", by now nearly 20 years old, is hoplessly inadequate for whatever computer application you have in mind today; it is now too clumsy, too risky, and too expensive to use. PL/I --"the fatal disease"-- belongs more to the problem set than to the solution set. It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration. The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense. APL is a mistake, carried through to perfection. It is the language of the future for the programming techniques of the past: it creates a new generation of coding bums. The problems of business administration in general and data base management in particular are much too difficult for people that think in [programmerese], compounded with sloppy English. About the use of language: it is impossible to sharpen a pencil with a blunt axe. It is equally vain to try to do it with ten blunt axes instead. Besides a mathematical inclination, an exceptionally good mastery of one's native tongue is the most vital asset of a competent programmer. Many companies that have made themselves dependent on [the equipment of a certain major manufacturer](and in doing so have sold their soul to the devil) will collapse under the sheer weight of the unmastered complexity of their data processing systems. We can found no scientific discipline, nor a healthy profession, on the technical mistakes of the Department of Defense and, mainly, one computer manufacturer. The use of anthropomorphic terminology when dealing with computing systems is a symptom of professional immaturity. By claiming that they can contribute to software engineering, the soft scientists make themselves even more ridiculous. (Not less dangerous, alas!) In spite of its name, software engineering requires (cruelly) hard science for its support. In the good old days physists repeated each other's experiments, just to be sure. Today they stick to FORTRAN, so that they can share each other's programs, bugs included. Projects promoting programming in "natural language" are intrinsically doomed to fail. * * * Isn't this list enough to make us uncomfortable? What are we going to do? Return to the order of the day, presumably... Prof. Dr. Edsger W. Dijkstra Burroughs Research Fellow PS. If the conjecture "You would rather that I had not disturbed you by sending you this." is correct, you may add it to the list of uncomfortable truths. EWD ------------------------------------------------------------------------- I think this speaks for itself, even for being 7 years old... ----------------------------------------------------------------- gopher://quux.org/ conversion by John Goerzen of http://communication.ucsd.edu/A-News/ This Usenet Oldnews Archive article may be copied and distributed freely, provided: 1. There is no money collected for the text(s) of the articles. 2. The following notice remains appended to each copy: The Usenet Oldnews Archive: Compilation Copyright (C) 1981, 1996 Bruce Jones, Henry Spencer, David Wiseman.