in reply to Re^2: the try/catch example from "Programming Perl" analyzed
in thread the try/catch example from "Programming Perl" analyzed

Well, that helps a bit with the implementation, but doesn't solve the fundamental problem of having to handle the non-blessed case. Also, you now have to pull in another module to check for blessedness.

"There is no shame in being self-taught, only in not trying to learn in the first place." -- Atrus, Myst: The Book of D'ni.

  • Comment on Re^3: the try/catch example from "Programming Perl" analyzed

Replies are listed 'Best First'.
Re^4: the try/catch example from "Programming Perl" analyzed
by rsteinke (Scribe) on Aug 19, 2004 at 06:15 UTC

    You could always use some sort of object wrapper to convert the strings into error objects, and hide that in the 'try' code,

    local $_ = (blessed $@) ? $@ : MyStringErrorClass->new($@);
    or some such. That class (or a function that returns different error objects depending on the error string, or something), would know all about the Errno module, and other standard kinds of errors.

    Ron Steinke
    <rsteinke@w-link.net>