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=unavailable autolearn_force=no version=3.4.4 Path: border2.nntp.dca1.giganews.com!nntp.giganews.com!ottix-news.ottix.net!newsswitch.lcs.mit.edu!nntp.TheWorld.com!.POSTED!not-for-mail From: Robert A Duff Newsgroups: comp.lang.ada Subject: Re: Timeouts in Ada Date: Thu, 24 Jul 2014 11:37:39 -0400 Organization: The World Public Access UNIX, Brookline, MA Message-ID: References: <50bdb713-7ce1-411b-810b-9bdee1d26b7a@googlegroups.com> <7581b098-ea30-4b34-a51e-2f0dd5a57563@googlegroups.com> <00aae9b5-42e8-40e8-a2dd-7e56ecd2bca3@googlegroups.com> NNTP-Posting-Host: shell01.theworld.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: pcls7.std.com 1406216225 26289 192.74.137.71 (24 Jul 2014 15:37:05 GMT) X-Complaints-To: abuse@TheWorld.com NNTP-Posting-Date: Thu, 24 Jul 2014 15:37:05 +0000 (UTC) User-Agent: Gnus/5.1008 (Gnus v5.10.8) Emacs/21.3 (irix) Cancel-Lock: sha1:6MAc1S+WxNdeZoABz4QLdhEU8DM= Xref: number.nntp.dca.giganews.com comp.lang.ada:187833 Date: 2014-07-24T11:37:39-04:00 List-Id: AdaMagica writes: > select > call_1(params) > or > call_2(params) > or > delay 10 > end select > > The model in Ada is a set of counters (or cash points in a > supermarket), an every day experience: You (as a person) can only > queue before one of them. That's why it is not allowed in the syntax. It makes perfect sense to enqueue on multiple entries. In fact, "select call_1 or delay..." enqueues twice (once on the entry call, and once on the timer queue). Regarding your analogy: There's a supermarket near me where they have just one queue, and the person at the head of the queue takes the first available cash point. In a sense, they're enqueued on multiple cash points. ;-) Like the multi-way call proposed (and rejected) for Ada 9X, they only use one. I think the reason multiple entries are not allowed is that during the Ada 9X project, it was thought to be too hard to implement. Or too hard to implement on existing implementations (which of course had not been designed for that). - Bob