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
next prev parent 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