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=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,4e5770c49b971630 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!npeer03.iad.highwinds-media.com!news.highwinds-media.com!feed-me.highwinds-media.com!nx01.iad01.newshosting.com!newshosting.com!news2.euro.net!feeder.news-service.com!npeer.de.kpn-eurorings.net!npeer-ng0.de.kpn-eurorings.net!newsfeed.arcor.de!newsspool4.arcor-online.net!news.arcor.de.POSTED!not-for-mail Date: Wed, 04 May 2011 19:06:55 +0200 From: Georg Bauhaus User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9 MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: High-Integrity OO and controlled types References: <679e3217-98dd-43c1-86f6-2038a029c3ea@b19g2000yqg.googlegroups.com> <94f3a272-d071-4a74-bfbd-8f2b4c2347cf@m10g2000yqd.googlegroups.com> <4dbfe6cc$0$7664$9b4e6d93@newsspool1.arcor-online.net> <1in9ypl17vu1t$.1shivr91x8zw6.dlg@40tude.net> <4dc01dca$0$6885$9b4e6d93@newsspool2.arcor-online.net> <1ds39akl3dbii$.mlyj7piip5o3.dlg@40tude.net> <4dc112cf$0$6772$9b4e6d93@newsspool3.arcor-online.net> <4dc166bd$0$6973$9b4e6d93@newsspool4.arcor-online.net> <1ligthpgu6ogv$.dquevy2bn4tw$.dlg@40tude.net> <4dc16ff7$0$6985$9b4e6d93@newsspool4.arcor-online.net> <1wtqj5ym270iw.11hopx6y7w1co$.dlg@40tude.net> In-Reply-To: <1wtqj5ym270iw.11hopx6y7w1co$.dlg@40tude.net> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Message-ID: <4dc187af$0$6991$9b4e6d93@newsspool4.arcor-online.net> Organization: Arcor NNTP-Posting-Date: 04 May 2011 19:06:55 CEST NNTP-Posting-Host: 1ddfc077.newsspool4.arcor-online.net X-Trace: DXC=i=aC<@dfN6d016@cHD@m;j4IUKjLh>_cHTX3jmd_POK@TX< On 04.05.11 18:23, Dmitry A. Kazakov wrote: >> Try adding pragma Profile (Ravenscar) there ;.) > > I don't care much about Ravenscar, which is too limiting for almost > anything. There are limitations to make life easier for the readers and > ones for the compiler and prover. They are not same, some contradict to the > goals of each other. I always choose the former over the latter. Does it work when systems need to be fast at the lower levels? >> Is there really little overhead when Restore is replaced >> with some objects? > > [...] > > Negligible since used upon an exception, which I hope is not to propagate > at 100ns rate. Ah, o.K., I should have said source code maintenance overhead, too, and increased system complexity. The program now uses nesting, a language feature. In order to go with types for the same effects, it will have to be transformed. To replace the Restore procedure, the transformation would have to add not just objects but also "indirections" that make up for the effects. I think that what you said earlier? If this is the case, then I wonder whether or not this kind of overhead is worth the effort. All of this does not address the issue of how to hook "nested rollback".