From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fac41,9a0ff0bffdf63657 X-Google-Attributes: gidfac41,public X-Google-Thread: 103376,4b06f8f15f01a568 X-Google-Attributes: gid103376,public X-Google-Thread: f43e6,9a0ff0bffdf63657 X-Google-Attributes: gidf43e6,public X-Google-Thread: 1108a1,9a0ff0bffdf63657 X-Google-Attributes: gid1108a1,public From: claveman@inetworld.net (Charles H. Sampson) Subject: Re: Software landmines (loops) Date: 1998/10/01 Message-ID: <1dg8p3r.vfredh1aou58iN@n207167116191.inetworld.net>#1/1 X-Deja-AN: 396936321 References: <6qfhri$gs7$1@nnrp1.dejanews.com> <35cb8058.645630787@news.ne.mediaone.net> <902934874.2099.0.nnrp-10.c246a717@news.demon.co.uk> <6r1glm$bvh$1@nnrp1.dejanews.com> <6r9f8h$jtm$1@nnrp1.dejanews.com> <6renh8$ga7$1@nnrp1.dejanews.com> <6rf59b$2ud$1@nnrp1.dejanews.com> <6rfra4$rul$1@nnrp1.dejanews.com> <35DBDD24.D003404D@calfp.co.uk> <6sbuod$fra$1@hirame.wwa.com> <35f51e53.48044143@news.erols.com> <6sdiav$e0g$1@hirame.wwa.com> <6sfcft$70p$1@hirame.wwa.com> X-Trace: news2.randori.com 907303490 207.167.116.191 (Thu, 01 Oct 1998 21:44:50 PDT) NNTP-Posting-Date: Thu, 01 Oct 1998 21:44:50 PDT Newsgroups: comp.lang.eiffel,comp.object,comp.software-eng,comp.lang.ada Date: 1998-10-01T00:00:00+00:00 List-Id: Robert Martin wrote: > Stephen Leake wrote in message ... > >If there is only one 'exit' statement, why is this bad? > > > >loop > > ... stuff > > exit when ; > > ... stuff > >end loop; > > > >One entry, one exit. Perfectly clear. There's nothing magic about > >putting the exit statement at the top or the bottom! > > In fact there is. If the exit condition is at the top or the bottom, then > the body of the loop will always be excuted an exact integral number of > times. However if the loop condition is in the middle, then the loop body > will be executed a fractional number of times. Well, this is certainly a twist to me. I was taught the n-and-a- half loop as an example of the inadequacy of loop structures in most programming languages. Now it seems that everything has been turned around 180 degrees and there is some sort of software principle (in some peoples' minds) that the entire body of a loop must execute "an exact integral number of times." As another responder has pointed out (not in these words), in the presence of conditional statements it's not clear what this condition means. My guess is that it's this: Every statement immediately in the loop body executes on every iteration of the loop. If this is an accurate statement of this new principle, my immediate re- sponse is: So what? Why should we care? I apologize for responding to a post that's 31 days old. I got in on this long thread very late and I'm running very hard to catch up. Charlie -- To get my correct email address, replace the "claveman" by "csampson" in my fake (anti-spam) address.