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.9 required=5.0 tests=BAYES_00,FORGED_GMAIL_RCVD, FREEMAIL_FROM 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-7-bit Path: g2news2.google.com!postnews.google.com!50g2000hsm.googlegroups.com!not-for-mail From: Maciej Sobczak Newsgroups: comp.lang.ada Subject: Re: GNAT for MS Visual Studio Date: Sun, 07 Oct 2007 14:30:20 -0700 Organization: http://groups.google.com Message-ID: <1191792620.535744.132500@50g2000hsm.googlegroups.com> References: <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> <1tq0h0fb74sxe$.2ys0qzmfxcqo.dlg@40tude.net> <4707C0CC.1000108@obry.net> <1aa677sd3f3ox.k8awuo7pj13r.dlg@40tude.net> <1191702767.598768.210960@o80g2000hse.googlegroups.com> <1aqbpv0czr253.wrmcd70o5se5$.dlg@40tude.net> NNTP-Posting-Host: 85.3.103.41 Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Trace: posting.google.com 1191792620 11918 127.0.0.1 (7 Oct 2007 21:30:20 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Sun, 7 Oct 2007 21:30:20 +0000 (UTC) In-Reply-To: <1aqbpv0czr253.wrmcd70o5se5$.dlg@40tude.net> User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7,gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: 50g2000hsm.googlegroups.com; posting-host=85.3.103.41; posting-account=ps2QrAMAAAA6_jCuRt2JEIpn5Otqf_w0 Xref: g2news2.google.com comp.lang.ada:2340 Date: 2007-10-07T14:30:20-07:00 List-Id: On 7 Pa , 09:35, "Dmitry A. Kazakov" wrote: > I don't see any difference for containers. When reads are synchronized (by > whatever means) then everything is OK, so would be container reading. The difference is that you *don't* read a container. Instead, you *call some function with some tagged object as a parameter*. This is in some circles called "encapsulation", which can be translated as "you have no idea what is really going on". ;-) Reading works fine when you see the data directly, because you can ensure full compliance with the rules. This is not true with containers. > [ For protected objects, it seems that functions do not signal I would expect that protected procedures and entries signal functions, but after careful reading of 9/2-9.b I'm puzzled. What is a shared data outside the protected object? If I have an access variable that is kept inside the protected object - is the object (the target) considered to be inside the protected object as well? If not, and the target is not protected, then *lot's* of patterns don't work and the whole world breaks into pieces, so I assume that the target object is considered to be protected, not just the access variable. But since the object cannot know whether it is referenced and from where, then I assume that I actually don't have to keep anything in the protected object and I can use its subprograms to synchronize access to some object that lives outside of it. In which case 9/2-9.b is complete non-sense. What am I missing? -- Maciej Sobczak * www.msobczak.com * www.inspirel.com