http://qs321.pair.com?node_id=828620


in reply to Do you use an exception class in your Perl programs? Why or why not?

I sometimes use exception objects because catching exceptions based on class is less fragile than catching exceptions based on examining the error message.

if ($@) { # Fragile. if ($@ =~ /My error message/) { ... } else { die $@ } # Robust. if (blessed($@) and $@->isa("MyError")) { ... } else { die $@ } }
  • Comment on Re: Do you use an exception class in your Perl programs? Why or why not?
  • Download Code

Replies are listed 'Best First'.
Re^2: Do you use an exception class in your Perl programs? Why or why not?
by TGI (Parson) on Mar 15, 2010 at 04:59 UTC

    Parsing strings is fragile and error prone.

    Imagine if we had to pass our subroutine arguments and return values as strings.

    Without exception objects, that it the situation with exceptions. It really bothers me that I have to parse a string to identify an exception type. Especially since the raw data that produced the string should be available.

    This is the fundamental reason I've been obsessing about exceptions lately.


    TGI says moo