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,db88d0444fafe8eb X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news3.google.com!newsfeed2.dallas1.level3.net!news.level3.com!newsfeed-00.mathworks.com!nntp.TheWorld.com!not-for-mail From: Robert A Duff Newsgroups: comp.lang.ada Subject: Re: Surprise in array concatenation Date: 01 Sep 2005 12:09:48 -0400 Organization: The World Public Access UNIX, Brookline, MA Message-ID: References: <1125544603.561847.32140@g47g2000cwa.googlegroups.com> <14muavojz308w.1ouv7xin79rqu$.dlg@40tude.net> <87fyspgqrm.fsf@mid.deneb.enyo.de> NNTP-Posting-Host: shell01.theworld.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: pcls4.std.com 1125590988 28277 192.74.137.71 (1 Sep 2005 16:09:48 GMT) X-Complaints-To: abuse@TheWorld.com NNTP-Posting-Date: Thu, 1 Sep 2005 16:09:48 +0000 (UTC) User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 Xref: g2news1.google.com comp.lang.ada:4377 Date: 2005-09-01T12:09:48-04:00 List-Id: Florian Weimer writes: > * Dmitry A. Kazakov: > > > A more interesting question is why Empty'First does not raise any > > exception. After all, there is no any lower bound of an empty index range. > > Provided, that empty arrays are all same, of course. If not, then another > > interesting question would appear: how to make an empty array with the > > lower bound Integer'First? > > You can't. Even more problematic is the empty array whose index type > is an enumeration type with just one enumeration literal. Why would you want an unconstrained array indexed by enumeration type? And why would you want an empty array if the array type is constrained? As for modular types -- well, they're an abomination all around. It makes no sense whatsoever to have an index type for an unconstrained array such that Index'Pred(Index'First) > Index'First! - Bob