comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Multiple iterators for a type
Date: Sat, 26 May 2018 08:59:55 +0200
Date: 2018-05-26T08:59:55+02:00	[thread overview]
Message-ID: <peb0ld$14fo$1@gioia.aioe.org> (raw)
In-Reply-To: 574749990.548999719.627915.laguest-archeia.com@nntp.aioe.org

On 2018-05-26 05:57, Luke A. Guest wrote:
> Stephen Leake <> wrote:
> 
>> An "iterator" can be anything you want it to be. As Randy pointed out,
>> there can be only one that gets special treatment from the compiler, but
>> you did not mention that as a requirement.
>>
> 
> I’m attempting to implement a Unicode string using UTF-8, so I want the
> basic iterator over octets, then the next will iterate over the octets and
> generate code points, then another will be graphème clusters.

Why do you bother? I mean, there is no solution for having a 
user-defined array type in Ada. Iterator is only a small part of it. 
Even if the iterator kludge worked somehow, the rest would not.

Multiple inheritance is not complete either, so having two array 
interfaces for one object will be extremely difficult and uncomfortable. 
You will end up with a mess of helper generic packages to emulate full 
inheritance. [I went that way, there is nothing good there.]

In short, there is nothing useful Ada 20xx could bring to the problem of 
dealing with encoded strings.

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

  parent reply	other threads:[~2018-05-26  6:59 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-25 16:49 Multiple iterators for a type Lucretia
2018-05-25 19:50 ` Jacob Sparre Andersen
2018-05-25 21:50   ` Randy Brukardt
2018-05-26  3:13 ` Stephen Leake
2018-05-26  3:57   ` Luke A. Guest
2018-05-26  4:44     ` Jere
2018-05-26  6:59     ` Dmitry A. Kazakov [this message]
2018-05-26 12:33       ` Dan'l Miller
2018-05-26 13:03       ` Lucretia
2018-05-26 13:52         ` Dmitry A. Kazakov
2018-05-26 14:22           ` Dan'l Miller
2018-05-26  7:14     ` G.B.
replies disabled

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