in reply to EyeBall stumps BodBall (Error Handling)

I'd forgotten to check Perl Best Practices when writing the root node; from its Error Handling chapter (practices 171-184):

See Also

Updated: added more references to the See Also section.

Replies are listed 'Best First'.
Re^2: EyeBall stumps BodBall
by hv (Prior) on Jul 09, 2023 at 17:08 UTC

    Have exceptions report from the caller's location, not from the place where they were thrown

    I think this is the only one that I'd strongly disagree with.

    If you get an error thrown deep in some module as a result of a call, it is really easy to use Carp::confess to find out which line of your own code triggered it. However when you know only the line of your own code that triggered it, it can be far harder to diagnose what has actually gone wrong - if you can't immediately determine it based on the documentation of the call you made, you really want to find the line of code that raised the exception and work back from there.

      I'm sure hv knows this, but for others: if you want to make a die in another module to actually confess, use Devel::Confess, e.g.
      perl -d:Confess myfailingscript.pl

        I like the sound of what you say, but can you show a contextual example to fulfill the thread?