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.9 required=5.0 tests=BAYES_00 autolearn=ham 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: "Robert C. Martin" Subject: Re: Software landmines (loops) Date: 1998/10/04 Message-ID: <6v9idv$tp$1@hirame.wwa.com> X-Deja-AN: 397805845 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> <1dg8p3r.vfredh1aou58iN@n207167116191.inetworld.net> <6v2nr9$t8l$1@hirame.wwa.com> <6v39i0$fte$1@winter.news.erols.com> <6v4d5l$blb$1@hirame.wwa.com> <6v9eg5$b55$1@nnrp1.dejanews.com> X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3 Organization: Object Mentor Inc. Newsgroups: comp.lang.eiffel,comp.object,comp.software-eng,comp.lang.ada Date: 1998-10-04T00:00:00+00:00 List-Id: dewarr@my-dejanews.com wrote in message <6v9eg5$b55$1@nnrp1.dejanews.com>... >In article <6v4d5l$blb$1@hirame.wwa.com>, > "Robert C. Martin" wrote: > >> Yes, Mills did make this definition. However, I am referring to the work of >> Dijkstra in the late 60's and early 70's. Dijkstra was very clear about the >> notion of single entry and single exit within the body of a loop. I believe >> that Mills' do-while-do loop is an unauthorized addition to Dijkstra's work. > > >What a hilarious post. I am sure that HM would be very amused by the idea >that he had to get "authorization" from EWD for stating what he (very >reasonably) defined as his notion of structured programming :-) For your entertainment, below my signature I have included a post which appeared about a month ago. It was initially sent by Ray Gardner. It gives us some insight into how Dijkstra felt regarding Harland Mills and his additions to Structured Programming. As for Mills' notions regarding SM, he is entitled to have them. And you are entitled to consider that mid-exit loops are part of SP because Mills said so. And I, I am entitled to conclude that mid-exit loops are not part of SP because Dijkstra unambiguously excluded them. And, in this matter, I think Dijkstra has priority. 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 ====================================================================== Here's a clue, maybe. Don't read too much into it. From "EWD494: Trip Report E.W. Dijkstra 16th April/7th May, 1975, U.S.A. and Canada", reprinted in _Selected Writings on Computing: A Personal Perspective_, E.W. Dijkstra, Springer-Verlag, 1982 (a _really_ neat sample of Dijkstra's EWD papers, which I think were mostly circulated only to colleagues by a sort of samizdat): [Dijkstra stays with A. Wasserman, lectures at Berkeley, speaks at ACM Pacific 75, lectures at Stanford, stays at Knuth's house. Parties back at Wasserman's, meeting Karp, Floyd, and Backus. Goes to LA for the International Conference on Software Reliability. Acerbic remarks. Goes to ISI (?) to meet with Manna, Ershov, Burstall, Randell, Turski, Wulf, and others, sees an unconvincing demonstration of automatic program-proving. Goes to Phoenix for an ACM Chapter meeting [damn, why didn't we ever get him to Denver when we had a viable chapter?], goes to Mission Viejo to visit the Burroughs Large Systems Plant. Flies to Montreal to attend an IBM conference on Software Engineering Education.] "... in my innocence I had expected an audience of computer scientists. My driver, however, was a manager, who opened the conversation with something like 'so you are the world expert on structured programming and chief programmer teams.'. Then I knew that I was out in the wilderness and politely refused to be associated with Harlan D. Mills." [More very acerbic remarks: "The ... conference was very instructive for me, although I learned a lot without which I would have been happier. At most fify percent of the partcipants were computing scientists; the rest were either IBM officials or managers of the [DP] departments of large IBM customers. I had full opportunity to observe all the intricate love/hate relations between the angles of the triangle 'university-manufacturer- customer'. It was all very frightening and I wish that I had a mastery of my pen like Arthur Koestler, for then I could have written a companion volume to his 'The Call Girls'." "The central victims in this drama are the [MBAs] and the firms dependent on their services ... They really have painted themselves into a corner with very sticky molasses! They have made a number of unforgiveable mistakes. One mistake is that they have based their full automation upon the IBM/360. When that machine was announced, it was immediately clear to many -- even inside IBM!-- that it would be practically impossible to write decent software for it... You cannot program a crooked machine to go straight ... The next mistake is that they decided to program in COBOL. ... OS/360 is no longer 'logical spaghetti', but 'logical barbed wire'. ... on the whole it was ghastly; unreal. I was severely shocked by the cultural level of the business participants. ..."] "Later I heard Harlan Mills give a summing up of some of the things I had said --together with some Harlanesk additions-- for that business audience. It was terrible, a misuse of language to which to the best of my powers I could not give a meaning. So, every third phrase I interrupted Harlan 'please could you explain or restate what you tried to say', but it was hopeless. Tom Hull helped me and I was very grateful to him. Later, when it was all over, our eyes met, and Tom gasped 'Jezus!'. It was the first time that I had heard him use strong language. How to sell empty but impressive slogans under the cloak of academic respectibility... ." "Turski's comments were short: 'They don't want computer scientists, nor software engineers, they want brainwashed mental cripples.'. It is too true... ." "On the last morning, Harlan Mills gave the summing up talk. It was again very much of the same, but, remarkably enough, I learned something from him, viz. the expression 'entry level jobs'. His argument was that the university should not train experts --as an aside: training and education were constantly confused-- because the jobs those experts should get were not 'entry level jobs'. This may be a profound difference between the academic community and (at least some of) the business community: there is not the slightest objection to giving the most responible university function, viz. a full professorship, to a youngster who has just got his Ph.D. It does not happen so very often, because really brilliant people are rare; but nothing in the university environment forbids it ... But to the business communities represented it was unthinkable to give a youngster any real responsibility... ."