|
Boost : |
From: terekhov (terekhov_at_[hidden])
Date: 2002-01-14 22:09:56
--- In boost_at_y..., "David Abrahams" <david.abrahams_at_r...> wrote:
[...]
> The point of all this is that it doesn't matter if the operation
throws
> ReallyReallyBad or any other exception, including ones whose name
you don't
> know: the recovery action is always the same, and is based on the
> operation's exception guarantee. <language-bashing>That's why
Java's focus
> on always knowing the exception types at the expense of
understanding what's
> happened to the program state is so wrongheaded</language-bashing>,
and
> <opinion>why compiler-enforced exception-specifications are not
nearly the
> good idea that they seem to be at first</opinion>.
>
> Yes, it's possible to design degenerate operations which break this
model,
> but there aren't too many of these around, even in legacy code. The
> basic/strong/nothrow guarantees encourages a cooperative model
where the
> degenerate cases are even less likely.
Thanks for the write-up! However, one more question.
I am just concerned that our "plug-in" operation
might have some programming error in it, which
would manifest itself with some "unexpected"
exception and broken safety guarantee. I just want
to use "unexpected" as an indication whether I am
still running in "secure" environment. Is this a
totally silly idea? Please explain why.
regards,
alexander.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk