comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Half Constrained Array Types and Slices
Date: Fri, 10 Mar 2006 09:46:32 +0100
Date: 2006-03-10T09:46:31+01:00	[thread overview]
Message-ID: <1pfxe79p64svi.1txsf811gbkrr.dlg@40tude.net> (raw)
In-Reply-To: fg7Qf.2239$x94.1238@newsread1.news.pas.earthlink.net

On Fri, 10 Mar 2006 04:28:59 GMT, Jeffrey R. Carter wrote:

> Robert A Duff wrote:
>> 
>> I don't quite see the point of this.  If 'Length = 0,
>> it seems to me, then the index type must be some sort of integer,
>> or something like that.  It depends on how far afield you want
>> to go.  For example, do you like "array(String range <>) of Integer"?
> 
> I think the index type should be discrete.

No. It should have some interface, which we could call an "abstract index
type." If that type is ordered then ranges have meaning. Strings are
ordered, so ranges are theoretically OK.

[ Discreteness does not imply ranges. Modular types is an example of a
discrete type, which is very difficult for ranges. Order is more important.
]

>> There's no _range_ there...

There is, but for most of finite bounds a string range would contain an
uncountable number of items. For example "A".."B". This range includes
"AA", "AAA", etc. This might be is undesirable, however, it would be
interesting to think about how to deal with bounded infinite ranges, like
"A".."B". After all [universal] floating-point ranges are allowed in Ada,
and they aren't finite...

>> The idea that 'Range is equivalent to 'First..'Last seems reasonable to
>> me...
> 
> I'm not saying it's a good idea. I'm just wondering what the consequences of it are.

I don't think this idea is good. Mathematicians confront this issue as
well. So they introduced open and closed sets and carefully distinguish Min
from Inf and Max from Sup. What about range notations equivalent to ]a,b]
or (a,b]? First..Last is like [a,b].

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2006-03-10  8:46 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-02  5:00 Half Constrained Array Types and Slices Jeffrey R. Carter
2006-03-02  8:34 ` Dmitry A. Kazakov
2006-03-02 15:34   ` Georg Bauhaus
2006-03-02 19:37     ` Dmitry A. Kazakov
2006-03-02 20:06   ` Jeffrey R. Carter
2006-03-02 20:37     ` Dmitry A. Kazakov
2006-03-02 21:01     ` Robert A Duff
2006-03-02 20:40   ` Robert A Duff
2006-03-02 14:32 ` Larry Kilgallen
2006-03-02 20:08   ` Jeffrey R. Carter
2006-03-02 20:48   ` Robert A Duff
2006-03-06  2:16     ` Larry Kilgallen
2006-03-06 18:50       ` Martin Krischik
2006-03-02 20:38 ` Robert A Duff
2006-03-03  5:15   ` Jeffrey R. Carter
2006-03-03  8:57     ` Dmitry A. Kazakov
2006-03-03 23:41     ` Robert A Duff
2006-03-06 17:50       ` Jeff Carter
2006-03-06 18:31         ` Dmitry A. Kazakov
2006-03-07 19:02           ` Jeff Carter
2006-03-08 14:29             ` Dmitry A. Kazakov
2006-03-09 22:44               ` Robert A Duff
2006-03-10  8:46                 ` Dmitry A. Kazakov
2006-03-06 19:49         ` Stefan Lucks
2006-03-08 17:36         ` brian.b.mcguinness
2006-03-08 17:56           ` Jeff Carter
2006-03-09 22:36         ` Robert A Duff
2006-03-10  4:28           ` Jeffrey R. Carter
2006-03-10  8:46             ` Dmitry A. Kazakov [this message]
2006-03-10 17:33               ` Robert A Duff
2006-03-10 21:24                 ` Dmitry A. Kazakov
2006-03-10 17:38             ` Robert A Duff
2006-03-11  0:19               ` Randy Brukardt
2006-03-11  1:43                 ` Jeffrey R. Carter
2006-03-11  8:38                   ` Niklas Holsti
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox