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=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,5faad1722103f6a7 X-Google-Attributes: gid103376,public Path: g2news1.google.com!news1.google.com!newsfeed.stanford.edu!headwall.stanford.edu!newshub.sdsu.edu!elnk-nf2-pas!newsfeed.earthlink.net!stamper.news.pas.earthlink.net!newsread2.news.pas.earthlink.net.POSTED!01cc3b7c!not-for-mail Reply-To: "Richard Riehle" From: "Richard Riehle" Newsgroups: comp.lang.ada References: Subject: Re: 7E7 Flight Controls Electronics X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1409 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1409 Message-ID: Date: Wed, 09 Jun 2004 06:23:25 GMT NNTP-Posting-Host: 66.81.221.243 X-Complaints-To: abuse@earthlink.net X-Trace: newsread2.news.pas.earthlink.net 1086762205 66.81.221.243 (Tue, 08 Jun 2004 23:23:25 PDT) NNTP-Posting-Date: Tue, 08 Jun 2004 23:23:25 PDT Organization: EarthLink Inc. -- http://www.EarthLink.net Xref: g2news1.google.com comp.lang.ada:1266 Date: 2004-06-09T06:23:25+00:00 List-Id: "Alexander E. Kopilovich" wrote in message news:mailman.75.1086745242.391.comp.lang.ada@ada-france.org... > Richard Riehle wrote: > > > COBOL, prior to the 1985 standard, was a dreadful language for > > structured programming. In fact, it was so horrible that I have no > > compunction in stating that true structured programming was almost > > impossible in the language. > > Certainly you are using here the words "structured programming" as a special > term, that is, in Dijkstra's sense. But that way of structuring programs is > not the only possible way, and it is not generally best, that is, there are > major application domains for which this way isn't the best. There are other > ways for structured programming (in general sense), and COBOL was very well > suited for some of them. For example, if you have ever read "Principles of > Program Design" by Jackson, you may recall that JSP was quite happy with > COBOL. Sorry, but COBOL was totally ill-suited to support of well-formed structures of any kind prior to ANSI-85. Take the horrible model for an IF statement as an example. Those of us who had to use this half-baked conditional formation recall how easily it led to programming mistakes. The addition of END-IF in ANSI-85 solved that problem. The fact that Jackson "was quite happy with COBOL" is simply an indication of the widespread stupidity regarding the shortcomings of the earlier forms of the language. No intelligent contemporary programmer would want to return to hideous mess of tangled code so typical of pre-ANSI-85. Structures, in the Dijkstra sense, was far more than "GO TO Considered Harmful." More important, though, are the elementary control structures of Jacopini and Bohm which, when properly formed, will include scope terminators such as ANSI-85, END-PERFORM, END-READ, END-IF, etc, without which the resulting code is usually a mess. I have written and maintained code written by others, in COBOL 68, 74, and 85. I would never want to do anything in 68 or 74 again. In my view, COBOL, prior to the ANSI-85 standard was not "very well suited" for writing maintainable, dependable, well-structured code, in the Dijkstra sense, the Jackson sense, the Jacopini and Bohm sense, or in any other sense. Since the ANSI-85 standard, COBOL has become one of the most interesting languages around. It has corrected the silliness of the earlier standards, and can be used as effectively for creating maintainabl software as well any of the competing technologies -- when used by a competent programmer. The same could not be said of the earlier standards, where the code so often evolved into a "pile of dry rot held up by a flying buttress." Richard Riehle