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 11:59:19 +0200
Date: 2004-05-19T11:59:19+02:00	[thread overview]
Message-ID: <av2ma0p9gf6j9anno2o2iott7pc9406mas@4ax.com> (raw)
In-Reply-To: mailman.6.1084930076.334.comp.lang.ada@ada-france.org

On Wed, 19 May 2004 05:20:55 +0400 (MSD), "Alexander E. Kopilovich"
<aek@VB1162.spb.edu> wrote:

>Dmitry A. Kazakov wrote:
>
>> But to have a library you need the language first.
>
>You may be surprised, but I don't think so. More precisely, I don't think 
>that we must have a language in advance or restrict ourselves to a single
>language.

Of course we have to. Things like availability of class-wide
programming, MI, MD, interface inheritance, supertyping etc are
essential for, say, container library. This heavily influences the
whole design. It is C++'s insufficient ADT which led to STL.

>A library is not necessary an extension of a particular language -
>this is just a viewpoint and an approach. Another viewpoint and another
>approach is to build a library as a programming implementation of some
>theory. To have a library with the latter viewpoint/approach we need not
>the language first. We even may postpone decision about the languages that
>we will use (yes, several different languages - why not?) for various parts
>of our library until the design of the library will reach some level of
>refinement. What we need first with this approach is solid theoretical ground
>and clear and consistent requirements for implementation.

In which language those requirements will be written?

>> And as the story of
>> container libraries shows, the languages (both C++ and Ada) seem to be
>> insufficient for this job.
>
>The story of container libraries shows once again already known fact: Ada's
>weakness for *general-purpose* libraries. I think that many Ada.* packages
>suffer one way or another from this weakness.
>
>I guess that from viewpoint of general-purpose libraries, Ada's packages are
>somehow overloaded with various features and restrictions. What is good for
>specific-purpose library may be not so good for general-purpose one.

It is never good.

>I'm not
>calling here for reconsidering of the notion of package (and not because it
>is impossible, but simply because current packages are good enough for
>specific-purpose libraries), but I think that there can be another (i.e.,
>additional) construct, more flexible and less concerned about effectiveness
>(and even about readability

Note that readability is the paramount concern. The whole goal of a
container library to provide a higher level of abstraction. One could
sacrifice efficiency, though I do not see why it is necessary, but not
easiness of use.

> - one may notice that general-purpose libraries
>have much more chances to be supplied with additional materials then most of
>specific-purpose libraries).

The major problem is weakness of Ada's ADT. Unfortunately people keep
on looking in wrong direction. Generics won't help.

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



  reply	other threads:[~2004-05-19  9:59 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 [this message]
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
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