From: "Alexandre E. Kopilovitch" <aek@vib.usr.pu.ru>
To: comp.lang.ada@ada-france.org
Subject: Re: U : Unbounded_String := "bla bla bla"; (was: Is the Writing...)
Date: Wed, 8 Oct 2003 23:12:35 +0400 (MSD)
Date: 2003-10-08T23:12:35+04:00 [thread overview]
Message-ID: <mailman.53.1065640422.25614.comp.lang.ada@ada-france.org> (raw)
In-Reply-To: <86u4ov4ojmuugvp2p4qsg725ah45p01c2h@4ax.com>; from "Dmitry A. Kazakov" at Tue, 07 Oct 2003 10:51:31 +0200
Dmitry A. Kazakov wrote:
> > type Y is private envelope of X;
> >
> [...]
>
> Looks similar to my proposal for defining subtypes.
I think yes, there is much in common, although there is also a difference:
your proposal is significantly broader; it is certainly heavier as it pertains
to possible consequences, and I have no immediate opinion whether it will be
easier to find sound applications for that your proposal than for mine, more
narrow one.
> Why to call "envelope" something which is a subtype? (:-))
"subtype" in Ada implies a possibility of some kind of restriction imposed on
the base type, while the word "envelope" implies some kind of extension (of
functionality or applicability). You see, for a language terms I strongly
prefer application/user view to a compilation theory's view, even for advanced
entities/constructions.
> It should be something like:
>
> type Y is private subtype X;
>
> Note that for the sake of genericity one need more than two
> conversions. There should be four:
>
> X_From_Y, X_To_Y - this pair is used when an Y gets substituted for X,
> i.e. when Y *inherits* a subprogram from X. One of these conversions
> might be absent. Then Y becomes an in-subtype or an out-subtype of X:
>
> type Y is private in subtype X;
> -- Only in-subroutines are inherited. So only X_From_Y has to be
> -- defined
>
> Y_From_X, Y_To_X - this pair is used when X gets substituted for Y,
> i.e. when Y exports something to X. This is a way to create
> supertypes.
>
> type Y is private in out supertype X:
Well, it seems that your proposal uses basic diagrams while mine is restricted
to isomorphic representations.
> If all four conversions are present both types become fully
> interchangeable, which is actually required in case String vs.
> Unbounded_String.
I don't see why two conversions (which provide isomorhic representation)
aren't enough for String vs. Unbounded_String... if we have no intention to
extend current functionality (except of making implicit conversions possible).
Alexander Kopilovitch aek@vib.usr.pu.ru
Saint-Petersburg
Russia
next prev parent reply other threads:[~2003-10-08 19:12 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-10-02 18:02 U : Unbounded_String := "bla bla bla"; (was: Is the Writing...) amado.alves
2003-10-03 0:05 ` U : Unbounded String : " Alexander Kopilovitch
2003-10-03 20:46 ` Dmitry A. Kazakov
2003-10-03 9:00 ` U : Unbounded_String := " Preben Randhol
2003-10-03 11:17 ` Jeff C,
2003-10-04 2:49 ` Robert I. Eachus
2003-10-06 23:57 ` Alexandre E. Kopilovitch
2003-10-07 8:51 ` Dmitry A. Kazakov
2003-10-08 19:12 ` Alexandre E. Kopilovitch [this message]
2003-10-09 8:42 ` Dmitry A. Kazakov
2003-10-10 20:58 ` Alexander Kopilovitch
2003-10-13 8:35 ` Dmitry A. Kazakov
2003-10-13 21:43 ` Alexandre E. Kopilovitch
2003-10-14 8:09 ` Dmitry A. Kazakov
2003-10-16 9:39 ` Alexandre E. Kopilovitch
2003-10-18 10:57 ` Dmitry A. Kazakov
2003-10-08 23:18 ` Robert I. Eachus
2003-10-09 21:35 ` Alexandre E. Kopilovitch
2003-10-10 18:10 ` Robert I. Eachus
2003-10-11 19:43 ` Alexandre E. Kopilovitch
2003-10-12 5:03 ` Robert I. Eachus
2003-10-13 9:07 ` Dmitry A. Kazakov
2003-10-13 14:36 ` Alexandre E. Kopilovitch
2003-10-13 19:46 ` Robert I. Eachus
2003-10-14 1:35 ` Jeffrey Carter
2003-10-14 17:11 ` Alexandre E. Kopilovitch
2003-10-14 20:26 ` Mark A. Biggar
2003-10-14 20:58 ` Robert I. Eachus
2003-10-15 16:59 ` Alexandre E. Kopilovitch
2003-10-15 20:38 ` (see below)
2003-10-16 0:31 ` Alexandre E. Kopilovitch
2003-10-16 2:30 ` (see below)
2003-10-16 13:54 ` Alexandre E. Kopilovitch
2003-10-16 14:11 ` (see below)
2003-10-16 8:01 ` Dmitry A. Kazakov
2003-10-17 20:26 ` Randy Brukardt
2003-10-17 21:39 ` Alexandre E. Kopilovitch
2003-10-17 23:03 ` Robert I. Eachus
2003-10-23 21:11 ` Alexandre E. Kopilovitch
-- strict thread matches above, loose matches on Subject: below --
2003-10-03 12:00 amado.alves
2003-10-03 15:54 ` Mark A. Biggar
2003-10-03 20:41 ` Dmitry A. Kazakov
2003-10-03 16:12 amado.alves
2003-10-04 12:16 ` Preben Randhol
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox