Re: [Haskell-cafe] To [] Or Not To []

This stirred ancient memories in praise of wrong programs:
* If your program sorts a list, then your program is wrong.
This seems a very strange claim.
The whole thing is an abuse of the word "wrong". A program can be all of ugly, inefficient, unidiomatic, &c &c without being WRONG.
Fifty-plus years ago, when computing was 1000 times slower and cost $600/hour, it was typical for professional programmers to mediate between scientists and computers so that those expensive machines would be used efficiently. At Bell Labs, though, Dick Hamming insisted on open-shop computing because "It is more important to have the right problem done the wrong way, than to have the wrong problem done the right way." Doug

"It is more important to have the right problem
done the wrong way, than to have the wrong problem done
the right way."
Sounds like a nonsense. Does "problem done the wrong way" implies the
problem indeed isn't solved at all, doesn't it?
пт, 10 мар. 2017 г. в 10:42, Doug McIlroy
This stirred ancient memories in praise of wrong programs:
* If your program sorts a list, then your program is wrong.
This seems a very strange claim.
The whole thing is an abuse of the word "wrong". A program can be all of ugly, inefficient, unidiomatic, &c &c without being WRONG.
Fifty-plus years ago, when computing was 1000 times slower and cost $600/hour, it was typical for professional programmers to mediate between scientists and computers so that those expensive machines would be used efficiently. At Bell Labs, though, Dick Hamming insisted on open-shop computing because "It is more important to have the right problem done the wrong way, than to have the wrong problem done the right way."
Doug _______________________________________________ Haskell-Cafe mailing list To (un)subscribe, modify options or view archives go to: http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe Only members subscribed via the mailman list are allowed to post.

Am 10.03.2017 um 08:19 schrieb Geraldus:
"It is more important to have the right problem done the wrong way, than to have the wrong problem done the right way."
Sounds like a nonsense. Does "problem done the wrong way" implies the problem indeed isn't solved at all, doesn't it?
No, in that context, "done the wrong way" meant that Spaghetti code and similar abominations are okay if the program delivers. For which even today a case can be made if the program is just a one-shot explorative thing where nobody will ever spend a second look at the results or at the program code. Scientific computing often means fiddling with code to fiddle with data; you do dozens of throwaway programs, and if something of interest comes out, you can still write a reviewable one. Or not release the code at all because anybody in the community will write his/her own data validation code anyway.

On Fri, Mar 10, 2017 at 2:19 AM, Geraldus
Sounds like a nonsense. Does "problem done the wrong way" implies the problem indeed isn't solved at all, doesn't it?
Inefficiently. (Although yours is the extreme case of that.) -- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com ballbery@sinenomine.net unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net

On 10/03/2017, at 8:19 PM, Geraldus
wrote: "It is more important to have the right problem done the wrong way, than to have the wrong problem done the right way."
Sounds like a nonsense. Does "problem done the wrong way" implies the problem indeed isn't solved at all, doesn't it?
Absolutely not.
I remember back in about 1979 reading a procedure published
in an engineering journal and noticing at once that it took
O(n**5) time when simple manipulations familiar to any good
programmer would have made it O(n**2). To my way of thought
that was "done the wrong way", but the engineers who wrote
it were happy with what it did for them and the reviewers
are apparently happy that it gave the right answers.
Similarly, a program that needs 2MB of temporary data and
opens a connection to Oracle, stuffs the data into a
scratch table, and pulls it back later (without needing
ACID and without using anything more than SELECT * FROM TABLE)
is again to my mind doing it the wrong way, but if it gives
the right answers fast enough, the goal donor may not care.
The classic example from Java, bringing us back to the topic
of lists and strings, is
String dumpMap(HashMap
participants (5)
-
Brandon Allbery
-
Doug McIlroy
-
Geraldus
-
Joachim Durchholz
-
Richard A. O'Keefe