error trapping
A. G. McDowell
mcdowella at mcdowella.demon.co.uk
Thu Oct 21 01:08:53 BST 1999
In article <199910191740.NAA20238 at locke.ccil.org>, John Cowan
<cowan at locke.ccil.org> 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
others:
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 ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To unsubscribe, mailto:majordomo at ic.ac.uk the following message;
unsubscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev
mailing list