comp.lang.ada
 help / color / mirror / Atom feed
From: Dmitry A. Kazakov <mailbox@dmitry-kazakov.de>
Subject: Re: "Must instantiate controlled types at library level." Why?
Date: Wed, 19 May 2004 16:15:19 +0200
Date: 2004-05-19T16:15:19+02:00	[thread overview]
Message-ID: <f6pma09ohrcd2jugpr908kq68qjb948c41@4ax.com> (raw)
In-Reply-To: c8fmb2$k7i$2@a1-hrz.uni-duisburg.de

On Wed, 19 May 2004 13:09:54 +0000 (UTC), Georg Bauhaus
<sb463ba@l1-hrz.uni-duisburg.de> wrote:

>Dmitry A. Kazakov <mailbox@dmitry-kazakov.de> wrote:
> 
>Hm. First you say,
>
>: Things like availability of class-wide
>: programming, MI, MD, interface inheritance, supertyping etc are
>: essential for, say, container library.
>
>Then,
>
>: This heavily influences the
>: whole design. It is C++'s insufficient ADT which led to STL.
>
>So I guess you have definitions of "container library" and ADT
>that are both novel in some respect? Would you mind telling us?

It is a bit too late for Ada 2005! (:-))

>: The major problem is weakness of Ada's ADT. Unfortunately people keep
>: on looking in wrong direction. Generics won't help.
> 
>Then what will help an Abstract Datatype? How?

The discussion started with the question why String should or not be a
built-in type. Isn't String a container type? I think that everybody
would agree that String is much better than either vector<char> or

generic
   thousand parameters
package Instantiate_And_Rename_Everything_To_Avoid_Name_Clashes

Probably Hyman Rosen would disagree. (*)

Now a very simple question, why other containers cannot be made like
String?

Technically what is needed is abstract array interfaces, abstract
index types, discriminants for all types, an ability to put type tags
and disctiminants in a dope separate from the value, pure compile-time
subprograms to evaluate does, supertypes. Give me that, then ask (:-))

More generally. Generics provide parametrization. It is
parametrization which is needed for a container library, not generics.
There are alternative ways of parametrization. Who said that
parametrization by a type tag, a discriminant, a type constraint are
not enough powerful for building a container library?

----
* To prevent questions about varying containers. One can bring String
and Unbounded_String under one roof to make them interchangeable. With
supertypes one could do it only when needed.

--
Regards,
Dmitry Kazakov
www.dmitry-kazakov.de



  parent reply	other threads:[~2004-05-19 14:15 UTC|newest]

Thread overview: 59+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-05-11 23:04 "Must instantiate controlled types at library level." Why? Peter C. Chapin
2004-05-12  1:03 ` Jeffrey Carter
2004-05-12 10:47   ` Peter C. Chapin
2004-05-12 11:25     ` Ludovic Brenta
2004-05-12 14:41       ` Martin Krischik
2004-05-13  2:20       ` Peter C. Chapin
2004-05-12 11:55     ` Martin Krischik
2004-05-13  2:59       ` Peter C. Chapin
2004-05-13  7:10         ` Martin Krischik
2004-05-13 10:36           ` Peter C. Chapin
2004-05-13 11:18             ` Martin Krischik
2004-05-13 22:27               ` Peter C. Chapin
2004-05-13 22:54               ` Freejack
2004-05-14  7:13                 ` Martin Krischik
2004-05-14 13:50                   ` Xenos
2004-05-14 17:27                     ` Georg Bauhaus
2004-05-14 17:58                       ` Xenos
2004-05-14 18:49                     ` Martin Krischik
2004-05-14 19:40                       ` Xenos
2004-05-14 22:47                         ` Ludovic Brenta
2004-05-15  8:34                           ` Martin Krischik
2004-05-16  2:55                           ` Hyman Rosen
2004-05-16 13:48                             ` Ludovic Brenta
2004-05-17  2:30                               ` Hyman Rosen
2004-05-17  5:39                                 ` Martin Dowie
2004-05-17  7:48                                   ` Ludovic Brenta
2004-05-17 15:01                                     ` Hyman Rosen
2004-05-17 16:31                                       ` Georg Bauhaus
2004-05-17 17:40                                         ` Hyman Rosen
2004-05-17 19:17                                           ` Georg Bauhaus
2004-05-17  6:24                                 ` Martin Krischik
2004-05-17 19:48                                   ` James Kanze
2004-05-18  6:27                                     ` Martin Krischik
2004-05-17 12:33                                 ` Dmitry A. Kazakov
2004-05-17 13:46                                   ` Martin Krischik
2004-05-17 15:03                                     ` Dmitry A. Kazakov
2004-05-17 16:02                                   ` Alexander E. Kopilovich
2004-05-18  7:48                                     ` Dmitry A. Kazakov
2004-05-19  1:20                                       ` Alexander E. Kopilovich
2004-05-19  9:59                                         ` Dmitry A. Kazakov
2004-05-19 12:38                                           ` Hyman Rosen
2004-05-19 13:28                                             ` Dmitry A. Kazakov
2004-05-19 13:09                                           ` Georg Bauhaus
2004-05-19 13:44                                             ` Hyman Rosen
2004-05-19 14:17                                               ` Dmitry A. Kazakov
2004-05-19 14:15                                             ` Dmitry A. Kazakov [this message]
2004-05-21 11:39                                               ` Georg Bauhaus
2004-05-21 20:33                                                 ` Dmitry A. Kazakov
     [not found]                                                   ` <c8mkor$rlq$1@a1-hrz.uni-duisburg.de>
2004-05-23  1:28                                                     ` Hyman Rosen
2004-05-23  8:55                                                     ` Dmitry A. Kazakov
2004-05-24 11:38                                                       ` Georg Bauhaus
2004-05-24 13:57                                                         ` Dmitry A. Kazakov
2004-05-24 14:40                                                           ` Georg Bauhaus
2004-05-25  8:32                                                             ` Dmitry A. Kazakov
2004-05-25 15:47                                                               ` Georg Bauhaus
     [not found]                                   ` <URJ8Eg0vzF@VB1162.spb.edu>
2004-05-17 16:50                                     ` Marius Amado Alves
2004-05-18  8:27                                       ` Dmitry A. Kazakov
2004-05-15 17:20                     ` Pascal Obry
2004-05-13 19:33             ` Randy Brukardt
replies disabled

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