error trapping

A. G. McDowell mcdowella at
Thu Oct 21 01:08:53 BST 1999

In article <199910191740.NAA20238 at>, John Cowan
<cowan at> writes
>It is no accident that C++ and Java have termination semantics only
>for their exceptions.  Unfortunately I cannot find a citation to this
>story, but it is instructive.
The Design and Evolution of C++
Bjarne Stroustrup, published by Addison Wesley, ISBN 0-201-54330-3
Section 16.6, P.390-393 in my copy

There is also a two-line summary of Cedar/Mesa experience, which was
apparently repeated in two large IBM projects, and was supported by many

termination is preferred over resumption; this is not a matter of
opinion but a matter of years of experience. Resumption is seductive,
but not valid.

The suggested alternative to resumption makes most sense in the context
of resource acquisition. Sacrificing rigor for brevity:
while((resource = acquire()) != null) callback();
The callback should either release some more resource or throw a
(terminating) exception, so you exit the loop either normally, with the
resource, or via the exception.

I was amused by the following section:

... Martin O'Riordan reported that "Microsoft had several years of
positive experience with resumable exception handling", but the absence
of specific examples and doubts about the value of OS/2 Release 1 as a
proof of technical soundness weakened his case.

I have no experience of OS/2 Release anything, and so cannot comment.
Perhaps somebody out there can tell us if later releases evolved away
from resumable exceptions.
A. G. McDowell

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as: and on CD-ROM/ISBN 981-02-3594-1
To unsubscribe, mailto:majordomo at the following message;
unsubscribe xml-dev
To subscribe to the digests, mailto:majordomo at the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at

More information about the Xml-dev mailing list