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-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,9d303864ae4c70ad X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2004-04-14 08:57:55 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!headwall.stanford.edu!HSNX.atgi.net!cyclone-sf.pbi.net!216.196.106.144!border2.nntp.sjc.giganews.com!border1.nntp.sjc.giganews.com!nntp.giganews.com!local1.nntp.sjc.giganews.com!nntp.comcast.com!news.comcast.com.POSTED!not-for-mail NNTP-Posting-Date: Wed, 14 Apr 2004 10:57:54 -0500 Date: Wed, 14 Apr 2004 11:57:54 -0400 From: "Robert I. Eachus" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax) X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Reprise: 'in out' parameters for functions References: <5ad0dd8a.0404090512.15af2908@posting.google.com> <5ad0dd8a.0404091828.6e79bb4e@posting.google.com> In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Message-ID: NNTP-Posting-Host: 24.147.90.114 X-Trace: sv3-nD7dazFyImOwQjmbLIZTljoLavpx6JQVJZlv/PIkX7OhBk6LXfqcxxH3ZbgIFiJj7S/oK9uUb254L5I!/858Ti8KMxfrvz82d2m93G+eEGYr64SJu4A0vVmcgTQmY9b5rT4wwwNnCjBX6g== X-Complaints-To: abuse@comcast.net X-DMCA-Complaints-To: dmca@comcast.net X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.1 Xref: archiver1.google.com comp.lang.ada:7098 Date: 2004-04-14T11:57:54-04:00 List-Id: Dmitry A. Kazakov wrote: > This has nothing to do with abstraction inversion. The problem here is that > Ada does not have multiple protected actions. Same problem with tasks, > there cannot be rendezvous with multiple tasks. It is much work to solve > that. Especially to convince people that prefix notation is inherently bad. Not quite right. A decision was made early in the development of Ada that a CALLING task can only rendezvous with a single task. A task can accept arbitrarily many calls simultaneously. You might prefer that the rule worked the other way around, but we felt that we had to choose one or the other. Many-to-many rendezvous looked just too messy to contemplate. AFAIK, the only pattern that uses this feature is the one where you have multiple servers and a task that allocates requesting tasks to servers. I have actually used this pattern. -- Robert I. Eachus "The terrorist enemy holds no territory, defends no population, is unconstrained by rules of warfare, and respects no law of morality. Such an enemy cannot be deterred, contained, appeased or negotiated with. It can only be destroyed--and that, ladies and gentlemen, is the business at hand." -- Dick Cheney