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,4cb1f8d1c17d39a8 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Received: by 10.68.19.161 with SMTP id g1mr14115440pbe.7.1320100597495; Mon, 31 Oct 2011 15:36:37 -0700 (PDT) MIME-Version: 1.0 Path: p6ni48680pbn.0!nntp.google.com!news1.google.com!goblin1!goblin2!goblin.stu.neva.ru!newsfeed.x-privat.org!news.jacob-sparre.dk!pnx.dk!jacob-sparre.dk!ada-dk.org!.POSTED!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: Ada 'hello world' for Android; success! Date: Mon, 31 Oct 2011 17:34:48 -0500 Organization: Jacob Sparre Andersen Research & Innovation Message-ID: References: <8239efcjuw.fsf@stephe-leake.org> <98ca5430-aa52-4e39-b789-70d0dd6adb46@d33g2000prb.googlegroups.com> <824nyrq5p6.fsf@stephe-leake.org> <4eac1ca1$0$7625$9b4e6d93@newsspool1.arcor-online.net> <82mxciogt0.fsf@stephe-leake.org> NNTP-Posting-Host: static-69-95-181-76.mad.choiceone.net X-Trace: munin.nbi.dk 1320100490 12437 69.95.181.76 (31 Oct 2011 22:34:50 GMT) X-Complaints-To: news@jacob-sparre.dk NNTP-Posting-Date: Mon, 31 Oct 2011 22:34:50 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6109 X-RFC2646: Format=Flowed; Original Xref: news1.google.com comp.lang.ada:18771 Date: 2011-10-31T17:34:48-05:00 List-Id: "Stephen Leake" wrote in message news:82mxciogt0.fsf@stephe-leake.org... ... > In brief, _any_ framework that uses dispatching on class-wide > objects needs reference semantics. In Ada, that is indicated by the > explicit word 'access'. In Java, it is implicit. I prefer explicit. I don't follow this. All tagged objects in Ada are by-reference, so you never need explicit "access" for parameter passing. And class-wide objects can be stored in the Ada containers without using "access" as well. Claw is a framework that uses dispatching and reference semantics, yet it almost never uses explicit "access". So to claim it can't be done is disingenious. The problem with "access" in Ada is that it puts all of the burden of the storage management on the user, and it locks the user out of using the containers for storage management (as well as making stack-based object management much more wordy). It's much better to put that burden on the Ada implementation, and to give the clients maximum flexibility in how to structure their programs. Randy.