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: "Robert Martin" Subject: Re: Software landmines (loops) Date: 1998/09/06 Message-ID: <6su6e4$d3d$1@hirame.wwa.com>#1/1 X-Deja-AN: 388407230 References: <6rf59b$2ud$1@nnrp1.dejanews.com> <6rfra4$rul$1@nnrp1.dejanews.com> <35DBDD24.D003404D@calfp.co.uk> <6sbuod$fra$1@hirame.wwa.com> <904556531.666222@miso.it.uq.edu.au> <6sgror$je8$3@news.indigo.ie> <6sh3qn$9p2$1@hirame.wwa.com> <6simjo$jnh$1@hirame.wwa.com> <35eeea9b.2174586@news.erols.com> <6sjj7n$3rr$1@hirame.wwa.com> <35f055a5.1431187@news.erols.com> <6sjnlu$83l$1@hirame.wwa.com> <6skfs7$2s6$1@hirame.wwa.com> <35F252DD.5187538@earthlink.net> X-MimeOLE: Produced By Microsoft MimeOLE V4.72.2106.4 Organization: WorldWide Access - Midwestern Internet Services - www.wwa.com Newsgroups: comp.lang.eiffel,comp.object,comp.software-eng,comp.lang.ada Date: 1998-09-06T00:00:00+00:00 List-Id: Charles Hixson wrote in message <35F252DD.5187538@earthlink.net>... >I BELIEVE in structured programming. Stop believing in structured programming, it is not a faith. Instead, make sure that you understand what it is, and what its costs and benefits are. Then you can decide when to follow it, and when not. >I'm just not sure that se/se actually captures what it's really about. If you are saying that se/se is not the only way to attain the goals that Dijkstra was shooting at, you are almost certainly right. However, the technique defined by Dijkstra for attaining those goals is called Structured Programming. >And I'm sorry, but even if >Dijkstra did invent it, I don't feel that he necessarily understood what >he was inventing. So quotes about what he said strike me as beside the >point. They are certainly beside the point if the point is to "do things right". Even Dijkstra said his technique was unproven. But those quotes are not beside the point, if the point is describe an unambiguous definition for the term "Structured Programming". Again, we don't want to create the "Structured Programming" == "GOOD" relationship. We just want to describe what structured programming is, and understand its costs and benefits. >YES, it was VERY important for him to say it. YES, he made >great improvements in the art of programming. YES, he is one of the >founders of what modern programming IS. This doesn't make him perfect >and omniscient and omnipotent. I hope nobody thinks otherwise. >Early returns from routines frequently make them easier to understand. For some. >And maintain. Sometimes. >Se/se is something that is worth moderate efforts. In many cases. >It is, however, related to something else. Something that I don't yet have >words to wrap around, but lots of other people on this list seem to also >feel it. > >Code should be easy to understand AND to maintain. Both need to be >optimized. Somehow. And that will never happen until we all understand the costs and benefits of each technique, and abandon the practice of blindly following a technique. SP is one such technique. Using mid exit loops is another. We cannot assert that SP is *always good*. By the same token we cannot assert that mid exit loops are always good. Robert C. Martin | Design Consulting | Training courses offered: Object Mentor | rmartin@oma.com | Object Oriented Design 14619 N Somerset Cr | Tel: (800) 338-6716 | C++ Green Oaks IL 60048 | Fax: (847) 918-1023 | http://www.oma.com "One of the great commandments of science is: 'Mistrust arguments from authority.'" -- Carl Sagan