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: 1108a1,9a0ff0bffdf63657 X-Google-Attributes: gid1108a1,public X-Google-Thread: f43e6,9a0ff0bffdf63657 X-Google-Attributes: gidf43e6,public From: gwinn@ma.ultranet.com (Joe Gwinn) Subject: Re: Software landmines (loops) Date: 1998/09/03 Message-ID: #1/1 X-Deja-AN: 387674030 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> X-Ultra-Time: 4 Sep 1998 00:39:51 GMT X-Complaints-To: abuse@ultra.net Organization: Gwinn Instruments Newsgroups: comp.lang.eiffel,comp.object,comp.software-eng,comp.lang.ada Date: 1998-09-03T00:00:00+00:00 List-Id: It seems to me that there is an unspoken assumption in the long debate about GOTOs and spaghetti code: It doesn't follow that presence of GOTOs makes code spaghetti, or that code without GOTOs is always clear and easy to understand, write, and maintain. The issues are in my experience quite independent. I have seen lots of spaghetti code with nary a GOTO, and perfectly clear code with many GOTOs. I would submit that good programmers write clear, simple code, regardless of the nature of the language or language constructs used. (With the possible exception of APL, which was known as the write-only language.) I have seen the same effect in the design of digital hardware. The key issue is clarity of thought; lost-puppy engineers will do the oddest things, at length. It can be painful to watch, and hard on the engineer. So, the whole 1970s debate about structured programming (and thus GOTOs) reduced to the fond hope that if we tied the hands of those lost-puppy programmers, they would no longer be lost, and would then think ahead and write good code. By that same token, if we take a hard-to-use tool away from a rough carpenter, he will suddenly become a cabinetmaker. Joe Gwinn