From: Thomas <fantome.forums.tDeContes@free.fr.invalid>
Subject: Re: array from static predicate on enumerated type
Date: Wed, 16 Mar 2022 01:38:41 +0100 [thread overview]
Message-ID: <fantome.forums.tDeContes-A2ED4E.01384016032022@news.free.fr> (raw)
In-Reply-To: s2ofr1$1cg3$1@gioia.aioe.org
In article <s2ofr1$1cg3$1@gioia.aioe.org>,
"Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote:
> On 2021-03-15 18:48, Shark8 wrote:
>
> > So, in Ada, there's no good choice for how to actually DO an array with
> > gaps in the index:
>
> That applies to all containers. The problem is mapping the key to a
> dense position when the key is not dense or might be unordered.
>
> There is no gaps in positions.
>
> > But Array *isn't* a map, though often it is substituted as one.
>
> Of course it is, per definition of mapping. f : key -> element.
>
> > Array has further constraints, like the contiguous memory labeled above.
>
> No. The constraint here is a dense index. That is not specific to a
> general map or an array. It is a fundamental property of the set of keys
> being a convex set. Convex ensures certain useful mathematical
> properties invariant to the representation of the mapping. In
> particular, it gives a way to enumerate elements.
> Arbitrary predicate kills convex, so the problem. Not array. A map would
> have just same problem: a map of LETTERS is in general not substitutable
> for a map of CURVED_LETTERS.
i don't understand,
since Ada.Containers.Ordered_Maps.Key_Type is private,
and so new Ada.Containers.Ordered_Maps (CURVED_LETTERS, Integer) is
allowed.
--
RAPID maintainer
http://savannah.nongnu.org/projects/rapid/
prev parent reply other threads:[~2022-03-16 0:38 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-12 20:49 array from static predicate on enumerated type Matt Borchers
2021-03-12 21:22 ` Egil H H
2021-03-12 22:16 ` Jeffrey R. Carter
2021-03-12 22:41 ` Dmitry A. Kazakov
2021-03-13 2:06 ` Matt Borchers
2021-03-13 4:55 ` Randy Brukardt
2021-03-15 14:16 ` Matt Borchers
2021-03-15 17:53 ` Shark8
2021-03-16 6:58 ` Randy Brukardt
2021-03-13 8:04 ` Dmitry A. Kazakov
2021-03-15 14:11 ` Matt Borchers
2021-03-15 17:48 ` Shark8
2021-03-15 20:25 ` Dmitry A. Kazakov
2021-03-16 13:27 ` Shark8
2021-03-16 14:25 ` Dmitry A. Kazakov
2021-03-17 4:05 ` Matt Borchers
2021-03-17 7:08 ` Dmitry A. Kazakov
2021-03-17 18:44 ` Matt Borchers
2021-03-17 19:41 ` Dmitry A. Kazakov
2021-03-18 1:30 ` Matt Borchers
2021-03-18 8:20 ` Dmitry A. Kazakov
2021-03-19 0:10 ` Matt Borchers
2021-03-19 8:00 ` Dmitry A. Kazakov
2021-03-18 10:15 ` Niklas Holsti
2021-03-18 10:47 ` AdaMagica
2021-03-18 11:26 ` Dmitry A. Kazakov
2021-03-19 0:34 ` Matt Borchers
2021-03-19 0:49 ` Jeffrey R. Carter
2021-03-23 1:07 ` Matt Borchers
2021-03-23 3:43 ` Randy Brukardt
2021-03-22 19:09 ` Niklas Holsti
2021-03-17 15:08 ` Shark8
2021-03-17 19:08 ` Matt Borchers
2021-03-17 20:41 ` Shark8
2021-03-18 1:04 ` Matt Borchers
2021-03-18 14:25 ` Shark8
2021-03-18 23:36 ` Matt Borchers
2022-03-16 0:38 ` Thomas [this message]
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox