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.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!feeder.eternal-september.org!gandalf.srv.welterde.de!news.jacob-sparre.dk!loke.jacob-sparre.dk!pnx.dk!.POSTED!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: Problems with SPARK 2015 and XMLAda Date: Mon, 24 Aug 2015 16:32:43 -0500 Organization: JSA Research & Innovation Message-ID: References: <6952b70d-a9bc-4d0a-beb5-1cd38d6a3318@googlegroups.com> <9d3dc132-4e1a-4e9c-bcd4-82a42a73745f@googlegroups.com> NNTP-Posting-Host: rrsoftware.com X-Trace: loke.gir.dk 1440451964 27573 24.196.82.226 (24 Aug 2015 21:32:44 GMT) X-Complaints-To: news@jacob-sparre.dk NNTP-Posting-Date: Mon, 24 Aug 2015 21:32:44 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-RFC2646: Format=Flowed; Original X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 Xref: news.eternal-september.org comp.lang.ada:27597 Date: 2015-08-24T16:32:43-05:00 List-Id: wrote in message news:alpine.DEB.2.20.1508210948320.23241@debian... ... > I doubt this makes any observable difference. The legitimate examples for > exceptions that "signal things that cannot be known at compile time" (as > Randy wrote) are usually related to input-output operations. You really should say "external environment" rather than I/O. Anything that the target OS (or hardware!) provides is in that category -- environment variables (what if some other program adds/deletes a variable?), command lines, memory management (allocating too much memory), clocks, GUI (what if the user of the program manually closes a window? That can happen at any time.) Not all of these things are slow in the sense of external I/O devices. The difference between exceptions and error codes (particularly as keeping OS error codes task safe adds an expense) may be more significant. (But clearly the main issues are readability, locality, and the requirement to handle them.) Randy.