Edsger W. Dijkstra: Difference between revisions

Jump to navigation Jump to search
26 bytes added ,  18:29, 8 December 2019
Line 19: Line 19:
Dijkstra didn't hate APL specifically: he hated every language other than [[wikipedia:ALGOL 60|ALGOL 60]]. However, APL has been the target of specific criticism in a number of his correspondences (which are called EWDs, after Dijkstra's initials):
Dijkstra didn't hate APL specifically: he hated every language other than [[wikipedia:ALGOL 60|ALGOL 60]]. However, APL has been the target of specific criticism in a number of his correspondences (which are called EWDs, after Dijkstra's initials):


* [http://www.cs.utexas.edu/users/EWD/transcriptions/EWD02xx/EWD295.html EWD295]: Iverson was walgelijk, dit was een “slick commercial” over APL. Het weerzinwekkendst vond ik zijn grofheid jegens zijn publiek. Als het zijn bedoeling is geweest om APL te verkopen, dan is hij hierdoor niet geslaagd: het publiek accepteerde hem niet. Ik kan het ontwerp geen consistentie ontzeggen (zal dat ook niet doen), wat op het eerste gezicht alleen maar ad-hoccery lijkt, blijkt meestal op een of andere manier overwogen. Het heeft mijn indruk bevestigd dat de invloed van APL op zijn gebruikers funest is: it is a giant bag of tricks! En inplaats van dat het de neiging programmeren te zien als puzzlen bestrijdt, moedigt het gereedschap deze opvatting aan. Ik dacht —en geloof dit nog— dat programmeren in de eerste plaats een conceptuele uitdaging is en zie niet, hoe APL in dit opzicht een stap vooruit is. Het treft mij zelfs als een stap achteruit.<br/>''Translated with [https://www.DeepL.com/Translator deepl]:''<br/>Iverson was disgusting, this was a slick commercial about APL. The most disgusting thing I found was his rudeness towards his audience. If his intention was to sell APL, he didn't succeed: the public wouldn't accept him. I can't deny (or won't deny) the design consistency, which at first glance seems only ad-hoccery, and is usually considered in some way. It has confirmed my impression that the impact of APL on its users is disastrous: it's a giant [[domain-specific language|bag of tricks]]! And instead of seeing programming as a puzzle, the tool encourages this view. I thought - and still believe this - that programming is first and foremost a conceptual challenge, and I don't see how APL is a step forward in this respect. It even strikes me as a step backwards.
* [http://www.cs.utexas.edu/users/EWD/transcriptions/EWD02xx/EWD295.html EWD295]: Iverson was walgelijk, dit was een “slick commercial” over APL. Het weerzinwekkendst vond ik zijn grofheid jegens zijn publiek. Als het zijn bedoeling is geweest om APL te verkopen, dan is hij hierdoor niet geslaagd: het publiek accepteerde hem niet. Ik kan het ontwerp geen consistentie ontzeggen (zal dat ook niet doen), wat op het eerste gezicht alleen maar ad-hoccery lijkt, blijkt meestal op een of andere manier overwogen. Het heeft mijn indruk bevestigd dat de invloed van APL op zijn gebruikers funest is: it is a giant bag of tricks! En inplaats van dat het de neiging programmeren te zien als puzzlen bestrijdt, moedigt het gereedschap deze opvatting aan. Ik dacht —en geloof dit nog— dat programmeren in de eerste plaats een conceptuele uitdaging is en zie niet, hoe APL in dit opzicht een stap vooruit is. Het treft mij zelfs als een stap achteruit.<br/>''Translated with [https://www.DeepL.com/Translator deepl], with edits:''<br/>Iverson was disgusting. This was a "slick commercial" about APL. The most disgusting thing I found was his rudeness towards his audience. If his intention was to sell APL, he didn't succeed: the public wouldn't accept him. I can't deny (or won't deny) the design consistency, which at first glance seems only ad-hoccery, and is usually considered in some way. It has confirmed my impression that the impact of APL on its users is disastrous: it's a giant [[domain-specific language|bag of tricks]]! And instead of fighting against seeing programming as a puzzle, the tool encourages this view. I thought —and still believe this— that programming is first and foremost a conceptual challenge, and I don't see how APL is a step forward in this respect. It even strikes me as a step backwards.
* [https://www.cs.utexas.edu/users/EWD/transcriptions/EWD03xx/EWD340.html EWD340] In the case of a well-known conversational programming language I have been told from various sides that as soon as a programming community is equipped with a terminal for it, a specific phenomenon occurs that even has a well-established name: it is called “the one-liners”. It takes one of two different forms: one programmer places a one-line program on the desk of another and either he proudly tells what it does and adds the question “Can you code this in less symbols?” —as if this were of any conceptual relevance!— or he just asks “Guess what it does!”. From this observation we must conclude that this language as a tool is an open invitation for clever tricks; and while exactly this may be the explanation for some of its appeal, viz. to those who like to show how clever they are, I am sorry, but I must regard this as one of the most damning things that can be said about a programming language. Another lesson we should have learned from the recent past is that the development of “richer” or “more powerful” programming languages was a mistake in the sense that these baroque monstrosities, these conglomerations of idiosyncrasies, are really unmanageable, both mechanically and mentally. [See also [[Code golf]]]
* [https://www.cs.utexas.edu/users/EWD/transcriptions/EWD03xx/EWD340.html EWD340] In the case of a well-known conversational programming language I have been told from various sides that as soon as a programming community is equipped with a terminal for it, a specific phenomenon occurs that even has a well-established name: it is called “the [[one-liner]]s”. It takes one of two different forms: one programmer places a one-line program on the desk of another and either he proudly tells what it does and adds the question “Can you code this in [[Code golf|less symbols]]?” —as if this were of any conceptual relevance!— or he just asks “Guess what it does!”. From this observation we must conclude that this language as a tool is an open invitation for clever tricks; and while exactly this may be the explanation for some of its appeal, viz. to those who like to show how clever they are, I am sorry, but I must regard this as one of the most damning things that can be said about a programming language. Another lesson we should have learned from the recent past is that the development of “richer” or “more powerful” programming languages was a mistake in the sense that these baroque monstrosities, these conglomerations of idiosyncrasies, are really unmanageable, both mechanically and mentally.
* [http://www.cs.utexas.edu/users/EWD/transcriptions/EWD03xx/EWD385.html EWD385]: I am afraid that the result is a disaster, at least for German Computing Science. German Computing Science is in danger of being taken over either by the mathematicians or by APL; in both cases the result will be very much the same, viz. the end of German Computing Science! [See also [[APL-Germany]]]
* [http://www.cs.utexas.edu/users/EWD/transcriptions/EWD03xx/EWD385.html EWD385]: I am afraid that the result is a disaster, at least for German Computing Science. German Computing Science is in danger of being taken over either by the mathematicians or by APL; in both cases the result will be very much the same, viz. the end of German Computing Science! [See also [[APL-Germany]]]
* [http://www.cs.utexas.edu/users/EWD/transcriptions/EWD04xx/EWD406.html EWD406]: Morris showed me some of his efforts to design a higher programming language that would control that machine: it was a valiant effort, but too much APL'ish to inspire me.
* [http://www.cs.utexas.edu/users/EWD/transcriptions/EWD04xx/EWD406.html EWD406]: Morris showed me some of his efforts to design a higher programming language that would control that machine: it was a valiant effort, but too much APL'ish to inspire me.

Navigation menu