From: Stephen Leake <stephen.a.leake.1@gsfc.nasa.gov>
Subject: Re: Container reqs
Date: 24 Oct 2001 15:01:04 -0400
Date: 2001-10-24T19:02:52+00:00 [thread overview]
Message-ID: <u8ze0g8wf.fsf@gsfc.nasa.gov> (raw)
In-Reply-To: lKzB7.41007$ev2.48168@www.newsranger.com
Ted Dennison<dennison@telepath.com> writes:
> In article <3BD626BF.4CAEAF69@acm.org>, Jeffrey Carter says...
> >
> >Ted Dennison wrote:
> >>
> >> It probably wouldn't prove too much of a hardship in Ada to limit the
> >> component library to non-limited definite types.
> >
> >Most of the data structures in the PragmAda Reusable Components can
> >handle any type the client can define an Assign procedure for. That
> >includes many useful limited types, such as most of the data structures.
>
> True. But when you take that approach you have to do one of two things:
>
> 1) Force *every* user, including the >90% using only non-limited definite types,
> to create an "assign" procedure so that they can instantiate the container
> package. One of my personal no-no's of design is forcing extra work of this
> magnitude on every user to support an exceptional case.
>
> 2) Create separate versions of the same component for use with
> limited/indefinite types.
Correct.
Although another option, that I mention without really supporting, is
to use gnatprep to provide the two packages above, from a single
source. That eases the maintenance burden. But it won't be standard
Ada.
> I see that you chose 1, and tried to mitigate the effort with
> another helper generic. But again, all this is complicating things
> significantly for the benifit of a small percentage of users.
How do you know it is a "small" percentage?
> Is there anyone out there who really thinks that being able to
> handle such types is a requirement, given that you can still handle
> pointers to them, and doing so would complicate the facility for
> everyone?
The packages in SAL were built precisely because I needed them in one
or another project I was working on. I don't know how many others
would use the full feature set, but I will in future projects. I use
limited indefinite types a lot!
Maybe this weekend I'll find time to sift thru my project code for
some real examples.
--
-- Stephe
next prev parent reply other threads:[~2001-10-24 19:01 UTC|newest]
Thread overview: 114+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-10-14 20:46 Container reqs Ehud Lamm
2001-10-14 22:00 ` Larry Kilgallen
2001-10-15 20:04 ` Ehud Lamm
2001-10-16 15:19 ` Ted Dennison
2001-10-16 19:17 ` Darren New
2001-10-14 22:52 ` James Rogers
2001-10-15 1:22 ` Darren New
2001-10-15 20:06 ` Ehud Lamm
2001-10-16 18:29 ` Stephen Leake
2001-10-17 5:55 ` Simon Wright
2001-10-15 20:15 ` Ehud Lamm
2001-10-15 6:49 ` Jeffrey Carter
2001-10-16 15:25 ` Ted Dennison
2001-10-17 12:40 ` John English
2001-10-17 13:16 ` Ted Dennison
2001-10-18 15:26 ` John English
2001-10-18 16:02 ` Ted Dennison
2001-10-17 14:17 ` Ehud Lamm
2001-10-23 8:17 ` John English
2001-10-23 14:23 ` Ehud Lamm
2001-10-23 20:07 ` Stephen Leake
2001-10-23 20:46 ` Ehud Lamm
2001-10-23 20:50 ` Ted Dennison
2001-10-23 21:18 ` Marin David Condic
2001-10-24 8:30 ` Ehud Lamm
2001-10-24 14:08 ` Marin David Condic
2001-10-25 20:10 ` Ehud Lamm
2001-10-25 21:18 ` Marin David Condic
2001-10-25 21:25 ` Marin David Condic
2001-10-23 21:27 ` Larry Hazel
2001-10-23 22:03 ` Ehud Lamm
2001-10-15 14:27 ` Ted Dennison
2001-10-15 17:47 ` Darren New
2001-10-15 20:08 ` Ehud Lamm
2001-10-17 6:08 ` Simon Wright
2001-10-18 20:52 ` Ehud Lamm
2001-10-18 22:29 ` Jeffrey Carter
2001-10-19 12:10 ` Georg Bauhaus
2001-10-19 15:36 ` Stephen Leake
2001-10-19 14:53 ` Ehud Lamm
2001-10-20 11:10 ` Simon Wright
2001-10-21 18:17 ` Stephen Leake
2001-10-22 17:02 ` Ehud Lamm
2001-10-22 17:34 ` David Botton
2001-10-22 18:02 ` Ehud Lamm
2001-10-20 2:44 ` Jeffrey Carter
2001-10-21 18:24 ` Stephen Leake
2001-10-23 1:13 ` Stephen Leake
2001-10-23 2:09 ` Jeffrey Carter
2001-10-23 13:29 ` Ted Dennison
2001-10-24 2:26 ` Jeffrey Carter
2001-10-24 13:54 ` Ted Dennison
2001-10-24 14:02 ` Lutz Donnerhacke
2001-10-24 14:24 ` Marin David Condic
2001-10-24 19:01 ` Stephen Leake [this message]
2001-10-25 1:40 ` Jeffrey Carter
2001-10-15 14:39 ` Lutz Donnerhacke
2001-10-15 15:36 ` Marin David Condic
2001-10-16 18:47 ` Stephen Leake
2001-10-16 19:18 ` Marin David Condic
2001-10-15 20:13 ` Ehud Lamm
2001-10-16 8:14 ` Lutz Donnerhacke
2001-10-16 8:50 ` Ehud Lamm
2001-10-16 10:12 ` Lutz Donnerhacke
2001-10-16 9:45 ` Jean-Marc Bourguet
2001-10-16 13:20 ` Ehud Lamm
2001-10-16 15:34 ` Ted Dennison
2001-10-16 18:49 ` Stephen Leake
2001-10-17 6:02 ` Simon Wright
2001-10-16 17:21 ` Jeffrey Carter
2001-10-16 18:57 ` Ted Dennison
2001-10-16 18:59 ` Stephen Leake
2001-10-16 19:38 ` Marin David Condic
2001-10-16 20:01 ` Larry Kilgallen
2001-10-16 20:19 ` Marin David Condic
2001-10-30 6:53 ` Barry Kelly
2001-10-30 14:53 ` Marin David Condic
2001-10-30 16:14 ` Jean-Marc Bourguet
2001-10-30 16:55 ` Marin David Condic
2001-10-31 6:37 ` Simon Wright
2001-10-30 17:45 ` Stephen Leake
2001-10-16 22:12 ` Robert*
2001-10-17 7:09 ` Jean-Marc Bourguet
2001-10-17 13:36 ` Ted Dennison
2001-10-17 14:12 ` Jean-Marc Bourguet
2001-10-17 15:15 ` Ted Dennison
2001-10-17 16:32 ` Jean-Marc Bourguet
2001-10-17 16:49 ` Ted Dennison
2001-10-17 16:55 ` Ehud Lamm
2001-10-18 7:39 ` Lutz Donnerhacke
2001-10-18 9:03 ` Jean-Marc Bourguet
2001-10-18 17:25 ` Jeffrey Carter
2001-10-18 20:09 ` Lutz Donnerhacke
2001-10-18 22:35 ` Jeffrey Carter
2001-10-19 8:44 ` Lutz Donnerhacke
2001-10-20 11:14 ` Simon Wright
2001-10-21 16:37 ` Paul Duquennoy
2001-10-17 17:18 ` Jeffrey Carter
2001-10-18 8:59 ` Jean-Marc Bourguet
2001-10-18 19:42 ` Simon Wright
2001-10-18 20:55 ` Ehud Lamm
2001-10-22 6:46 ` Kenneth Almquist
2001-10-22 8:04 ` mike
2001-10-22 8:42 ` Lutz Donnerhacke
2001-10-22 16:30 ` Jeffrey Carter
2001-10-22 17:14 ` Ehud Lamm
2001-10-16 11:37 ` Jean-Marc Bourguet
2001-10-16 13:23 ` Ehud Lamm
2001-10-16 13:39 ` Jean-Marc Bourguet
2001-10-16 15:36 ` Vincent Marciante
2001-10-16 16:15 ` Pat Rogers
2001-10-16 19:04 ` Stephen Leake
2001-10-16 15:53 ` Ted Dennison
2001-10-16 15:58 ` Jean-Marc Bourguet
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox