Beefy Boxes and Bandwidth Generously Provided by pair Networks Frank
Welcome to the Monastery
 
PerlMonks  

Re^4: An exploration of higher-level-language approaches to the "First all-zero row in an NxN matrix" problem (goto Considered Harmful)

by davido (Archbishop)
on Sep 25, 2011 at 05:37 UTC ( #927710=note: print w/ replies, xml ) Need Help??


in reply to Re^3: An exploration of higher-level-language approaches to the "First all-zero row in an NxN matrix" problem (goto Considered Harmful)
in thread An exploration of higher-level-language approaches to the "First all-zero row in an NxN matrix" problem (goto Considered Harmful)

That's a very thoughtful response, and I appreciate it. Thanks.

I agree with you that formal proofs never happen in a practical world, and I'm not about to give up 'last', 'next', and multiple return points from subs; they really do seem to make life easier. And often the alternative is additional flags and tests that make the code, as you pointed out, more verbose. They also can make the code more complicated to read, in my opinion.

While I understand where people are coming from with respect to desiring pure code that can be formally proven, there are precious few people who could even begin to formally prove the algorithm needed to accomplish this "first row" task. I couldn't. But there are those who live in a more theoretical world where producing results in the form of "getting the job done" is a secondary concern.

Dijkstra may not have been crazy, and MJD's blog does a good job of explaining the reasons. But his sanity existed in the world of computer science rather than the world of computer programming.

By the way; I liked what Knuth had to say about the term "Computer Science". Paraphrasing, he said, "We wouldn't call surgery 'knife science'." He seemed to consider the term unfortunately applied. ...I don't recall what he thought would have been more applicable though.


Dave


Comment on Re^4: An exploration of higher-level-language approaches to the "First all-zero row in an NxN matrix" problem (goto Considered Harmful)
Re^5: An exploration of higher-level-language approaches to the "First all-zero row in an NxN matrix" problem (goto Considered Harmful)
by BrowserUk (Pope) on Sep 25, 2011 at 06:56 UTC
    By the way; I liked what Knuth had to say about the term "Computer Science". Paraphrasing, he said, "We wouldn't call surgery 'knife science'."

    Thanks for that quote. I'd never heard of that article of Knuth's. I've just skimmed it but will be going back later to read it properly.

    I have always been a "computer science" sceptic, as I've expounded on at length here several times over the past years: Re: How do you view programming, Re: (OT) Programming as a craft, Re: Programming is more like:.

    My experience is that each new generation of CS majors come out of college, their heads filled -- by life-long, theoretical computer scientists (aka. professors) -- with idealistic notions of how to use science to produce perfect programs.

    Then they encounter the real world where they are expected to complete tasks easily as complex as their year long college projects --- using messy real-world data on messy real-world systems with messy real-world languages and tool-sets -- in a few weeks. And for the most part, they forget all the nice theories and knuckle down to doing the job.

    Those that don't either go back into academia, or write blogs.


    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.

      Nice link!

      I may actually have mis-attributed it. Though I thought it was Knuth (and maybe it was), in this article: Structured Programming with Go Go Statements. But since it's a pdf representation of a scan, I can't easily search for the quote therein. Dijkstra did also use it here: On a Cultural Gap.

      I'm going to have to re-read that Knuth article though; I was almost certain that's where I saw it first.


      Dave

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://927710]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (5)
As of 2014-04-23 23:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    April first is:







    Results (557 votes), past polls