Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re (tilly) 3: out of loop

by tilly (Archbishop)
on Mar 31, 2001 at 20:57 UTC ( [id://68669]=note: print w/replies, xml ) Need Help??


in reply to Re: Re: out of loop
in thread out of loop

I sincerely hope that you change this habit.

Now.

Do you like starting debugging without having a clue which file you had problems on, or what helpful information was in $!? How about your co-workers?

For these reasons and more, this is something that I feel extremely strongly on. I do not like working with code written by people who did not understand that this matters. I do not want to depend on people who do not appreciate this. Not knowing that trying to trap good error messages is important is one thing, but refusing to learn is a fireable offence in my books.

(And yes, the strength that I put into that statement does reflect a few very miserable late nights that I do not want to repeat. Ever.)

Replies are listed 'Best First'.
Re: Re (tilly) 3: out of loop
by indigo (Scribe) on Mar 31, 2001 at 22:24 UTC
    This was an illustrative snippet, to show how die could used to exit a loop. As such, I simplified a number of things, like no shebang, no use strict, not all the variables are initialized, and yes, limited error handling.

    Had this been a real program, it would have used my home grown alarm object, which checks $!, $?, and $@, builds a meaningful error string, logs it to a file with a timestamp, sends email, and dies as necessary. This same object I proselytize within my company, much the same way you are doing now.

    Had I included all that extraneous detail in my post, I fear the point would have been lost. And given it was essentially a "by the way" post, it would have required more effort than warranted to make it as explicit as you might like.

    So while I understand the reasons for your strongly stated response, I believe it misplaced.
      Couldn't you have just included an example snippet of what it would have looked like and then just included a note that the object you called here is a home-built error-reporting mechanism?

      I find that people learn style from what are meant as off-hand snippets, and so I think it is important that everything from pseudo-code on up always at least acknowledge the importance of testing for and dealing with errors. I would prefer that people think, Geez, that tilly is anal about error checking! than accidentally encourage (if only by omission) people to neglect it...

        I probably could have, but I don't think it would have added value. When I write example code, I add detail where it is relevant to the thread, and remove it where it is not. How many times do you see a simple open FILE, "file" or die; in an snippet? To me, it is clear that is just a placeholder, showing, but not elaborating upon, the error handling one would normally expect.

        In fact, my code started out with open FILE, $_ or die; and warn "Error!" if $@;. Perhaps I should have left it that way, making it clear the error handling was in fact a simplification, and not representative of what belongs in a real program.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others sharing their wisdom with the Monastery: (3)
As of 2024-04-26 01:21 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found