From: Mark Biggar <mark.a.biggar@home.com>
Subject: Re: Whether to raise exception or End_of_List function
Date: Wed, 21 Nov 2001 16:51:50 GMT
Date: 2001-11-21T16:51:50+00:00 [thread overview]
Message-ID: <3BFBDBDC.DC6FA8DE@home.com> (raw)
In-Reply-To: slrn9vnh96.55u.randhol+abuse@kiuk0156.chembio.ntnu.no
Preben Randhol wrote:
>
> Hi
>
> I have made a simple double linked list that I use in the application I
> develop. Before somebody suggest I use some other libraries I want to
> say that I made this double linked list to learn Ada 95 and get aware of
> different problems/aspects of implementing this, so at least for this
> application I want to keep it for now.
>
> The list code can be viewed here: http://www.pvv.org/~randhol/Ada95/List/
> Note that the code is still rough, I haven't removed some debugging
> functions/procedures etc...
>
> I put this into a package:
>
> package Examine_List is
> new Double_Linked_List (Data_Type => Natural);
>
> Main_Examine : Examine_List.List_Type := Examine_List.New_List;
>
> And use the Main_Examine. So far it has worked nicely, but now I came to
> that at one place (at least) in my application I have to go from the
> current position of the iterator until the end of the list. I cannot
> know the current position of the list iterator so I cannot use a
> for-loop. If I want to use a while loop however there are the problem of
> knowing when the end of the list is reached. I guess I can make a
> function End_of_List (which must also work if one try to backwards in
> the list) or I can just raise an exception when the user tries to
> step off the list.
>
> My question is which is the better solution; Exception or a End_of_List
> function and which would have fewer side effects?
Even though it may seem redundant, you should have both. You need the
exception to handle illegal list usage notification. But, as a general
rue of thumb for packages of this type, such a package should provide
test functions that pre-test for exceptional conditions so a user can
program around the exception.
--
Mark Biggar
mark.a.biggar@home.com
next prev parent reply other threads:[~2001-11-21 16:51 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-11-21 15:17 Whether to raise exception or End_of_List function Preben Randhol
2001-11-21 16:32 ` Preben Randhol
2001-11-21 16:51 ` Mark Biggar [this message]
2001-11-21 17:00 ` Preben Randhol
2001-11-21 17:01 ` Larry Kilgallen
2001-11-21 17:03 ` Preben Randhol
2001-11-21 19:34 ` Ed Falis
2001-11-21 17:04 ` chris.danx
2001-11-21 17:09 ` chris.danx
2001-11-21 22:00 ` Larry Kilgallen
2001-11-21 17:11 ` Jeffrey Carter
2001-11-21 17:53 ` Stephen Leake
2001-11-21 18:51 ` Preben Randhol
2001-11-22 3:53 ` Nick Roberts
2001-11-22 10:23 ` Preben Randhol
2001-11-23 14:37 ` 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