Peter Scott wrote:
>
> Tony Olekshy wrote:
> >
> > That's not what's proposed.  The core and other users would
> > use classes derived from Error to raise errors.  Other users
> > could even just Error itself.  Exception is reserved for
> > exceptions that don't and shouldn't derive from Error.
>
> I'm still having a hard time with this.  Maybe everyone else
> sees it and can explain it to me.  All I see is, you have a
> mechanism for implementing non-local flow control.  The reason
> the control flow skipped is surely opaque and irrelevant to
> the mechanism?  What the program decides to do with that
> exception, likewise.  Success and failure are more or less
> arbitrary interpretations we place on these exceptions.

I've taken out the concept of a built-in Error class.

It turns out that I really just don't want to have to write

    throw Exception::Error::App::DB tag => "ABC.1234",
        message => "Can't write to table $table.";

instead of

    throw Error_DB "ABC.1234: Can't write to table $table.";

RFC 88 (now, but not until recently) lets me do that via
inheritance, so I now gladly turn all the other built-in
error stuff over to RFC 80 ;-)

> > No. I want Error to be able to be extended, over the
> > evolution of Perl 6, to include anything that is deemed
> > suitable for error handling.  I don't want any of that to
> > interfer with base Exception functionality.

Ok, so now I may have to go and turn off something new in a
light-weight class.  I can live with that, as long as RFC 80
keeps this in mind.

Yours, &c, Tony Olekshy

Reply via email to