4 ms·
Backus literally inspired functional programming with his Turing acceptance and Dijkstra attacked him for it. Dijkstra attacked the paper that inspired Haskell
by jakespoon 6y ago
Backus literally inspired functional programming with his Turing acceptance and Dijkstra attacked him for it. Dijkstra attacked the paper that inspired Haskell and everything else that currently exists in FP. He tried to destroy it. He should be a footnote in history.
- thotsBgone 6y agoThe Whine Law: There will always be someone in every Hacker News comment section to whine like a baby. Every topic, every thread. Someone will whine.
- assap_cocky 6y agoWe both can't be right!
- Jtsummers 6y agoFunctional programming already existed in a few forms by the 1977 Turing Award lecture. ML was around since 1973, which defined the ML family (Ocaml, SML, F#) and influenced Haskell and others. The Lisp family of languages had been around since 1958. Some parts of the lecture can be seen as related to languages in the APL family (originated in 1965). These developments influenced the lecture itself. To gain context into Dijkstra's response, it may be worth reading it [0]. Here's the conclusion of his response: > In short, the article is a progress report on a valid research effort but suffers badly from aggressive overselling of its significance, long before convincing results have been reached. This is the more regrettable as it has been published by way of Turing Award Lecture. Regarding "He tried to destroy it." Dijkstra is known, and often criticized by others, for his hyperbole. Perhaps instead of imitating this heavily criticized aspect of his, you could tone down your rhetoric and actually create an argument rather than try to dismiss someone (and all their work) for one thing you disagree with. [0] https://www.cs.utexas.edu/users/EWD/transcriptions/EWD06xx/EWD692.html https://www.cs.utexas.edu/users/EWD/transcriptions/EWD06xx/E...
- jakespoon 6y agoSo, looking back from 2020, did Backus oversell it? We aren't there yet but it still looks like the right direction to me.
- Jtsummers 6y agoI will agree, Backus' ideas have panned out in many ways. Not having read his lecture in quite a while I can't comment on whether or not, in 1977, he was overselling the idea at the time, especially as I'm not familiar with the state of the art in research at the time (having been born 5 years later, and CS concepts not being taught in chronological order). Regardless, your original comment made two absurd claims: 1. Dijkstra attacked the paper that inspired Haskell and everything else that currently exists in FP. He tried to destroy it. [emphasis added] Which is what my quote of Dijkstra's actual statements was meant to rebut. He did not try to destroy it. He criticized it, and some of his criticism may have been wrong then, and I'd say is wrong now (with greater understanding of the ideas Backus was presenting), but he did not try to destroy it. 2. He should be a footnote in history. Another absurd position. Because of one response (and if you wanted to you can probably find a number of others) exaggerated beyond reason ("He tried to destroy it."), you want to dismiss some 50 years of work.
- jakespoon 6y agoI should have been clear with my response that I accept and agree with your criticism of my post. "He tried to destroy it" is too strong. I will back down from that.
- rightbyte 6y agoHis hopes for functional programming machines seems like overselling his dream of abandoning von Neumann atleast. Arcane Lisp-machines was actually made as a comparison. I don't get the feeling Backus meant that a "FP system" should be an abstraction ontop of a von Neumann machine/language.
- amw-zero 6y agoBased on what? What evidence is there that FP actually has any effect on a project?
- Wilem82 6y agoBy "attacked" you probably meant "criticised"? Criticising something is not only a perfectly normal activity, it's a necessary one and is an important part of the scientific method.
- amw-zero 6y agoI wouldn’t say he tried to destroy functional programming. If you read his response he pretty clearly says that he just thinks that FP as a solution to all problems is “overselling” the solution. And I 100% agree. Thinking that functional programming solves all problems is a fundamental misunderstanding of computation. The first thing that opened my eyes to the overselling of FP as a panacea was reading Leslie Lamport’s work, specifically Computation and State Machines: https://lamport.azurewebsites.net/pubs/state-machine.pdf https://lamport.azurewebsites.net/pubs/state-machine.pdf. Specifically, in Section 3: Programs as State Machines, he demonstrates how the same algorithm for computing factorials can be implemented via mutation or recursion. With TLA+, Lamport also showed that mutation and state can be reasoned about mathematically, contrary to the central claim of functional programming purists. The point is simple: functional programming doesn’t in any way _inherently_ help with correctly implementing programs. The fact that FP is currently in vogue is simply another example of how humans don’t require any evidence of anything at all before following a belief system blindly. FP does prevent certain classes of mistakes from happening, i.e. unintentional bugs due to mutation creating implicit state machines. But preventing bugs and aiding in correctness aren’t exactly the same thing.
- lioeters 6y ago> Dijkstra attacked the paper that inspired Haskell.. While Dijkstra's criticism probably does deserve to be called an "attack", the resulting exchange between him and Backus was highly thought-provoking and entertaining. https://github.com/jiahao/backus-dijkstra-letters-1979/ https://github.com/jiahao/backus-dijkstra-letters-1979/ https://medium.com/@acidflask/this-guys-arrogance-takes-your-breath-away-5b903624ca5f https://medium.com/@acidflask/this-guys-arrogance-takes-your... > He should be a footnote in history. Please read the posted article, and educate yourself on his historical significance. https://en.wikipedia.org/wiki/Edsger_W._Dijkstra#Pioneering_contributions_and_impact_on_computing_science https://en.wikipedia.org/wiki/Edsger_W._Dijkstra#Pioneering_...