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,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,6327f05d4989a68d X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,ASCII-7-bit X-Received: by 10.224.218.2 with SMTP id ho2mr10122715qab.8.1356305902169; Sun, 23 Dec 2012 15:38:22 -0800 (PST) Received: by 10.49.75.195 with SMTP id e3mr2982779qew.24.1356305902001; Sun, 23 Dec 2012 15:38:22 -0800 (PST) Path: k2ni2110qap.0!nntp.google.com!ee4no1981225qab.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Sun, 23 Dec 2012 15:38:21 -0800 (PST) In-Reply-To: <1pbg79bz92j3t$.sz41zduivjfp.dlg@40tude.net> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=69.153.58.182; posting-account=lJ3JNwoAAAAQfH3VV9vttJLkThaxtTfC NNTP-Posting-Host: 69.153.58.182 References: <7wrdmbre6jw9.qww9l0uzj6mg.dlg@40tude.net> <14oqoq06zhlu2.tcasif3hdyhw.dlg@40tude.net> <1drh1q1ln2dfh$.a9hwlg01fjfy.dlg@40tude.net> <50d6365d$0$6577$9b4e6d93@newsspool3.arcor-online.net> <1pbg79bz92j3t$.sz41zduivjfp.dlg@40tude.net> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: Press Release - Ada 2012 Language Standard Approved by ISO From: Shark8 Cc: mailbox@dmitry-kazakov.de Injection-Date: Sun, 23 Dec 2012 23:38:22 +0000 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Date: 2012-12-23T15:38:21-08:00 List-Id: On Sunday, December 23, 2012 2:08:53 AM UTC-6, Dmitry A. Kazakov wrote: >=20 > Contracted exceptions is an urgent need. There are contracted exceptions, of a sort -- the LRM guarantees that the p= redefined relational operator will not raise an exception and the predefine= d operators on integers will only raise NUMERIC_ERROR ( http://archive.adai= c.com/standards/83lrm/html/lrm-04-05.html ) -- of course that's an external= contract. The ability to have such guarantees applied to the programer's Ada text wou= ld indeed be a boon; perhaps using an aspect of the following form: Exceptions =3D> [ NOT NULL | NULL | "EXCEPTION_NAME"[, OR "EXCEPTION_NAM= E"]] Where EXCEPTION_NAME would map to either predefined exceptions or visible u= ser-defined exceptions, NULL would assert that the procedure raises no exce= ptions, and NOT NULL would be what we have now (subprogram can raise any ex= ception). The problem with the above is that there's some exceptions which are depend= ent on the [executing] environment at Run-time (STORAGE_ERROR springs to mi= nd).