kschwab has asked for the wisdom of the Perl Monks concerning the following question:
I wondering if anyone has adopted a consistent approach
to handling ( and generating ) exceptions in perl, including supplying explanatory text about the exception
or failure.
I've seen:
- subs that return 0 or undef on failure
- subs that die(), expecting the caller to wrap them in an eval block to catch failures, and use $@ to get the error text.
- subs that know the errors are OS related and thus set $! or $^E.
- subs that put error explanations into globals
- subs that call warn(), and expect the caller to muck with $SIG{__WARN__} to get context about the error
- use Carp;
- etc, etc
Does anyone have any thoughts on how I should approach passing error conditions and return values around in my own code ?
Back to
Seekers of Perl Wisdom