<div dir="auto">> Ben Franksen wrote:</div><div dir="auto"><br></div><div dir="auto">><span style="white-space:pre-wrap;background-color:rgb(255,255,255)">></span><i style="white-space:pre-wrap;background-color:rgb(255,255,255)"> Well, don't look for pointers to language design from the couple of</i></div><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)"><div dir="auto">>><i style="font-family:-apple-system,HelveticaNeue"> jokers portrayed in that pdf.</i></div><div dir="auto">>><i style="font-family:-apple-system,HelveticaNeue"> </i></div><div dir="auto">>><i style="font-family:-apple-system,HelveticaNeue"> I find it actually insulting to the good sense the real Dijkstra</i></div><div dir="auto">>><i style="font-family:-apple-system,HelveticaNeue"> always showed; and insulting to Haskellers ...</i></div><div dir="auto">
> I really don't get why you're so upset about this harmless opinionated
> piece that, in a humorous and obviously exaggerated way,</div><div dir="auto"><br></div><div dir="auto">It's not apparent to me this is humour, not even intended as humour.</div><div dir="auto">Notoriously, it's very difficult to get across sarcasm/irony on the interwebs.</div><div dir="auto"><br></div><div dir="auto">The tongue-in-cheek is not apparent to one of the authors, who has actually implemented these ideas</div><div dir="auto"><a href="http://blog.languager.org/2014/09/pugofer.html">blog.languager.org/2014/09/pugofer.html</a></div><div dir="auto">and it seems inflicted them on undergraduates.</div><div dir="auto"><br></div><div dir="auto">Including "8. layout is the only way to denote nesting ...".</div><div dir="auto"><br></div><div dir="auto">While they were at it, why not introduce sugar for function definition:</div><div dir="auto"><br></div><div dir="auto">> length . [] = 0</div><div dir="auto"><br></div><div dir="auto">would be easy to desugar as an equation defining `length`.</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">It's not apparent from the original thread May 2019 this is all a big hoot.</div><div dir="auto"><br></div><div dir="auto">If it's humour, who's the butt of the joke?</div><div dir="auto">A caricature of a Haskell newbie who doesn't understand Haskell,</div><div dir="auto">and can only regurgitate FP ideals as cheap dogma,</div><div dir="auto">played like a trout until "Exasperated".</div><div dir="auto">This is cruel sport, not Socratic method. Not humorous.</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">> applies some of Dijkstra's ideas about programming language syntax ...</div><div dir="auto"><br></div><div dir="auto">It's not apparent to me that EWD1300 is about programming languages;</div><div dir="auto">the piece addresses "polite mathematics", name-checks Whitehead, Leibniz, Tarski</div><div dir="auto">-- who are not well-known for their work on programming languages.</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">> Putting these words into Dijkstra's mouth is just an artist's freedom,
<br></div><div dir="auto">If it's intended as art, the least they could do is put their name to it.
> Despite your endless ranting the authors quite obviously do understand
> EWD1300.</div><div dir="auto"><br></div><div dir="auto">That's not apparent to me either.</div><div dir="auto"><br></div><div dir="auto">> I also don't see how this has anything to do with Dijkstra promoting
> Haskell for teaching.</div><div dir="auto"><br></div><div dir="auto">I'm not expecting the real Dijkstra would be uncritical of Haskell.</div><div dir="auto">I do expect that since Dijkstra saw Haskell's value for teaching, he would respect the (always difficult) design/syntax choices in the language.</div><div dir="auto"><br></div><div dir="auto">It's the faux-EWD's snide tripping-up of Haskeller that is uncharacteristic of Dijkstra.</div><div dir="auto"><br></div><div dir="auto">Also criticising Haskell's use of semicolon, which comes from ALGOL, as the real Dijkstra would be well aware.</div><div dir="auto"><br></div><div dir="auto">Also criticising allowing multiple constructs to express the same algorithm/semantics</div><div dir="auto"> -- ALGOL also has plenty of that, and by design.</div><div dir="auto">And cheap shots about Haskell not supporting "assignments, pointers, gotos ..."</div><div dir="auto">-- we all know Dijkstra considers them harmful.</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">AntC</div><div dir="auto"><br></div><div dir="auto"><br></div></pre>