From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,d4b13594b8779b99 X-Google-Attributes: gid103376,public From: stt@houdini.camb.inmet.com (Tucker Taft) Subject: Re: Improving Ada Exceptions Date: 1997/10/27 Message-ID: #1/1 X-Deja-AN: 285198791 Sender: news@inmet.camb.inmet.com (USENET news) X-Nntp-Posting-Host: houdini.camb.inmet.com References: <873elnu41d.fsf@mihalis.i-have-a-misconfigured-system-so-shoot-me> Organization: Intermetrics, Inc. Newsgroups: comp.lang.ada Date: 1997-10-27T00:00:00+00:00 List-Id: For what it is worth, we proposed during the Ada 9X revision allowing more flexibility in the exception mechanism, allowing for a hierarchy of exceptions, treating exception declarations approximately like type declarations, and treating "raise" statements approximately like creating an instance of the exception type. At the time, it was felt to be overkill. I suspect there might be more sympathy for it today, though if you look at how exceptions are used, many of them are used to represent unanticipated errors rather than anticipated messages to be received by higher level code. Java has an interesting approach, where some classes of exceptions are presumed to be unanticipated errors (and no local handler or "throws" clause is required), whereas others are required to have local handlers, or a "throws" clause that announces that the exception might be propagated. Unlike in C++, these rules are enforced at compile-time, which seems much more useful. -- -Tucker Taft stt@inmet.com http://www.inmet.com/~stt/ Intermetrics, Inc. Burlington, MA USA