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: f43e6,9a0ff0bffdf63657 X-Google-Attributes: gidf43e6,public X-Google-Thread: 1108a1,9a0ff0bffdf63657 X-Google-Attributes: gid1108a1,public X-Google-Thread: 103376,4b06f8f15f01a568 X-Google-Attributes: gid103376,public From: gerryq@indigo.ie (Gerry Quinn) Subject: Re: Software landmines (loops) Date: 1998/09/01 Message-ID: <6shbca$66c$1@news.indigo.ie>#1/1 X-Deja-AN: 386847749 References: <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@ <904556531.666222@miso.it.uq.edu.au> <6sgror$je8$3@news.indigo.ie> <6sh3qn$9p2$1@hirame.wwa.com> Organization: Indigo Newsgroups: comp.lang.eiffel,comp.object,comp.software-eng,comp.lang.ada Date: 1998-09-01T00:00:00+00:00 List-Id: In article <6sh3qn$9p2$1@hirame.wwa.com>, "Robert Martin" wrote: > >Gerry Quinn wrote in message <6sgror$je8$3@news.indigo.ie>... > >>Multiple exits to a single destination are not spaghetti. > >Spaghetti is not a well defined term. > How strange, then, that such sloppy language is endemic among those who believe they hold the line against sloppy coding... >However, multiple exits to a single destination represent a problem. The >two exits come from two different states within the algorithm. If the >single destination must do some work that depends upon that state (or if in >the future, that single destination must be modified to do work that depends >upon that state), then the code in the single destination is going to get >pretty ugly. > All code presents a problem, and a perfectionist could never write a line, one is so often forced to choose between alternatives each of which is ugly in its own way. When cleanup is unlikely to be needed, multiple exits are unlikely to pose a problem, and indeed can only be avoided by artificially extending the process. All conventional computation proceeds by the discarding of algorithmic states, and all destinations eventually end in one, irrespective of the merging mechanisms employed. - Gerry ---------------------------------------------------------- gerryq@indigo.ie (Gerry Quinn) ----------------------------------------------------------