<div dir="auto"><span style="background-color:rgb(253,253,253)">>> </span><span style="white-space:pre-wrap;background-color:rgb(255,255,255)">On 6/5/20 7:05 AM, Anthony Clayden wrote:</span><br></div><div dir="auto"><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">...

>><i> Also it doesn't seem to know Haskellers very well; nor Dijkstra's
</i>>><i> well-known support for Haskell in education.
</i>>><i> 
</i>>><i> There's other bits and pieces of 'Publications' on that the-magus site;
</i>>><i> including spoofs of Dijkstra which can't even spell his first name
</i>>><i> right. I rather suspect the ewd.pdf is a spoof that didn't turn out very
</i>>><i> funny. So altogether it's a couple of dudes shooting the breeze.
</i>
> These all seem pretty irrelevant to the point being made, which I think
> has merit.</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">(See my prev post about its lack of merit.)</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">No Haskeller I've ever come across would accuse Dijkstra of "stick[ing] to the antiquated imperative paradigm".</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">Dijkstra advocated teaching Haskell as an antidote to imperativism.</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">EWD1300 is advocating for his own 'notational conventions', <span style="font-family:-apple-system,HelveticaNeue">chiefly for writing math and formalising proofs. </span></pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)"><span style="font-family:-apple-system,HelveticaNeue">I don't see anything very specific to programming languages; certainly nothing specific to any paradigm.</span></pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">The pdf (words imputed to 'Haskeller') doesn't understand 'first-class':</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">The term dates back to Strachey 1967; it's to do with semantics of names; what in a FP context we'd call 'referential transparency'. It has nothing to do with syntax. Column 2 of page 1 is bogus.</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">Even if 'Haskeller' didn't know that CompSci archaeology, they'd certainly know the ($) operator. Whether or not it's the most important operator, there _is_ an operator and it is first-class.</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">'Haskeller' gets several answers wrong at the top of p2; finally gets to $ and gets that wrong too:</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">EWD's question re `length $ [] = 0` is not a way to define `length`. <span style="font-family:-apple-system,HelveticaNeue">Any Haskell beginner could stick that into an actual Haskell compiler and see why.</span></pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">Towards the bottom of p2 EWD admits "I do not know your Haskell very well ...". I'd say this faux-Haskeller knows Haskell less well than faux-EWD.</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">Just before that admission is another piece of bogus notation for operator sections of `x * y`. None of that appears in EWD1300.</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)"><br></pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">> This is all just a language design curiosity to me, though,
> and I'm not looking to start a new religious war until some of the
> present ones are resolved.</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)"><br></pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">Well, don't look for pointers to language design from the couple of jokers portrayed in that pdf.</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">I find it actually insulting to the good sense the real Dijkstra always showed; and insulting to Haskellers -- what's with all this gratuitous imputing of emotion? What's with just getting Haskell wrong? It's easy to check those claims; it's easy to get the (alleged) 'thought' peer-reviewed from the Haskell community.</pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)"><br></pre><pre style="white-space:pre-wrap;background-color:rgb(255,255,255)">AntC</pre></div>