Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re: Style Point: Catching eval { } errors

by diotalevi (Canon)
on Nov 24, 2003 at 21:23 UTC ( #309696=note: print w/ replies, xml ) Need Help??


in reply to Style Point: Catching eval { } errors

Even better, don't depend on $@.

eval { # Do stuff 1; } or do { # Handle errors };

I commonly write this to bring in $@ without being obfuscatory.

eval { ... ; 1} or die "Barfoo ... $@";


Comment on Re: Style Point: Catching eval { } errors
Select or Download Code
Re: Re: Style Point: Catching eval { } errors
by DapperDan (Pilgrim) on Nov 25, 2003 at 19:24 UTC
    I don't remember seeing any reference to this in the documentation for eval. If their were I would have used it.

    Perhaps it should be there? It seems to me that eval {} or do {} is the perfect idiom for using eval with exceptions.

      perldoc -q eval
      In both forms (eval EXPR / eval BLOCK), the value returned is the value of the last expression evaluated inside the mini-program; a return statement may be also used, just as with subroutines. The expression providing the return value is evaluated in void, scalar, or list context, depending on the context of the eval itself. See "wantarray" for more on how the evaluation context can be determined.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (7)
As of 2014-07-25 23:50 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (175 votes), past polls