Your skill will accomplish what the force of many cannot |
|
PerlMonks |
Re: Exception Classes Advice on Subclassesby halley (Prior) |
on Dec 21, 2005 at 17:25 UTC ( [id://518361]=note: print w/replies, xml ) | Need Help?? |
In Java and C++, exceptions are typically instances of some class, and are "thrown" by bad code and caught in surrounding "try/catch" syntax.
While some people have built these elaborate synonymous structures using Perl packages, I have found very little advantage in them over using Perl's built-in exception mechanism. In Perl, exceptions are a scalar value, stored in the special variable $@. These exceptions are "thrown" by bad code using the keyword die and caught in surrounding code by eval { } syntax. The advantages of classes appears to be when there are so many possible causes of failure that you need to send back uber-complex reporting structures to attempt to explain it. If you don't need all this complexity (and you should always avoid undue complexity), just use die/eval. Write Perl in Perl idioms using Perl's mechanisms. Otherwise you're just coding in Java or C++, but sprinkled with funny sigils. --
In Section
Seekers of Perl Wisdom
|
|