Dan Sugalski <[EMAIL PROTECTED]> wrote:
> pushmark 12
> popmark 12
> pushaction Psub
I've now implemented these bits. I hope it's correct, specifically, if a
return continuation in only captured, the action handler is not run.
See t/pmc/exceptions.t
Still missing is the throw opcode. Or better that exists, just exception
creation and the extended attributes like language is missing.
I'm still voting for a more object-ish exception constructor to better
accomodate HLLs different exception usage.
E.g.
e = new PyKeyError # presumably a constant singleton
throw e
That ought to be enough for heavily used exception and for Perl6
control exceptions.
OTOH
e = new Exception
setattribute e, "message", Pmsg
setattribute e, "language", PLang
...
throw e
construct a full exception object.
Currently it is:
e["_message"] = "foo"
e["_error"]
e["_severity"]
...
And it could be even something like:
cl = getclass "Exception"
e = cl."instantiate"("foo", "Perl", .error, .severity, ...)
leo