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=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,470860aa3e635a7 X-Google-Attributes: gid103376,public,usenet X-Google-Language: ENGLISH,ASCII Path: g2news2.google.com!news3.google.com!proxad.net!feeder1-2.proxad.net!news.mixmin.net!news.netcologne.de!newsfeed-fusi2.netcologne.de!newsfeed01.chello.at!newsfeed.arcor.de!newsspool2.arcor-online.net!news.arcor.de.POSTED!not-for-mail From: "Dmitry A. Kazakov" Subject: Re: GNAT for MS Visual Studio Newsgroups: comp.lang.ada User-Agent: 40tude_Dialog/2.0.15.1 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-13" Content-Transfer-Encoding: 8bit Reply-To: mailbox@dmitry-kazakov.de Organization: cbb software GmbH References: <13duou81kg3sd1c@corp.supernews.com> <13f6eg0te46m2a3@corp.supernews.com> <4xsl4zw3bp.fsf@hod.lan.m-e-leypold.de> <1191357491.860178.230380@22g2000hsm.googlegroups.com> <4702ADCC.7080209@obry.net> <1191439439.120567.172630@g4g2000hsf.googlegroups.com> <4703F02D.3030207@obry.net> <1191682021.844225.236870@g4g2000hsf.googlegroups.com> <4707A3D0.3070702@obry.net> Date: Sat, 6 Oct 2007 18:03:05 +0200 Message-ID: <1tq0h0fb74sxe$.2ys0qzmfxcqo.dlg@40tude.net> NNTP-Posting-Date: 06 Oct 2007 18:03:08 CEST NNTP-Posting-Host: 9d659e4c.newsspool3.arcor-online.net X-Trace: DXC=dKjbDQ>8bJ6i6K;>iZ]763McF=Q^Z^V384Fo<]lROoR1^;5]aA^R6>29EY09GFQU]7[6LHn;2LCV>[ On Sat, 06 Oct 2007 17:03:44 +0200, Pascal Obry wrote: > Matthew Heaney a �crit : >> No, this is incorrect. The container keeps track of nested calls >> (e.g. Query_Element, Iterate) using a count, in order to prevent >> container misuse (e.g. deleting the element while it's being >> queried). So even though the logical view of the container doesn't >> change, then physical view does change, and so the standard requires >> that multiple tasks accessing a container must be properly >> synchronized, even when the access is read-only. > > Outch! Big mistake to require this to me :( Why? The container type is not protected, thus you cannot expect it functioning as if it were the latter. BTW, I guess if placing a container into a protected object and accessing it from a function of, might be erroneous on a multi-core platform. Here two permissions collide: a protected object function can share, the object's container component cannot. The compiler should change the implementation of either. Would it? > Maybe something like "Don�t let best be enemy of good" ! It is rather "We didn't want to change the language to much," like by making protected types tagged, by introducing pure functions, by allowing in-out function parameters. It was not the best, not even good... -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de