in reply to Re^2: Sorting challenge (Insertion sort)
in thread Sorting challenge

One issue is that the test harness is probably happily supplying an infinite stream of integers, or at least more of them than are specified in the first input.

Hm. I'll put my hands up to the dups issue -- easily correct as you've done -- but this "they might supply more than they said they would" issue I do not buy.

The spec says that the first line will tell you how many number are in the file. If they supply more than that; they lied. More formally, they broke the contract of the specification. The fault is their's not mine.

Now, I know many people will take the approach that have taken, and say; "Well, we can cater for this unspecified possibility and handle it at very little extra cost, so we'll do that. It's defensive programming. It's a little extra effort now to save effort later....". And I say: "Just say no to trying 'what-if' code design".

Sure you can cater for that possible future; but what if:

Once you stop taking them at their word and catering for all the things they didn't say; or those they might have told lies about; you're on a slippery slope to a over-engineered project that gets canceled for going over budget.

Just say no to trying to predict the future.

Anyone who thinks my attitude to this is "just laziness"; read Meyer on Design by Contract.


With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
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.
  • Comment on Re^3: Sorting challenge (Insertion sort)

Replies are listed 'Best First'.
Re^4: Sorting challenge (Insertion sort)
by PerlSufi (Friar) on Jul 23, 2013 at 20:06 UTC
    Well said, BrowserUk. Maybe I should just try Project Euler instead :P
    I learned a lot from all your responses and concluded that this is an obvious demonstration of how good you guys are at perl and how devoted you are to solving a problem. Giving a ++ to all of you

      Project Euler's challenges are at least usually well thought out, and you're unlikely to get rejected with reasonable code that should pass. But some of them can consume a fair amount of time on research, and that time might be better spent productively. ;)


      Dave