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=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI autolearn=unavailable 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!news.glorb.com!news.cs.univ-paris8.fr!proxad.net!freenix!enst.fr!melchior!cuivre.fr.eu.org!melchior.frmug.org!not-for-mail From: "Alexander E. Kopilovich" Newsgroups: comp.lang.ada Subject: Re: 7E7 Flight Controls Electronics Date: Wed, 9 Jun 2004 05:32:19 +0400 (MSD) Organization: Cuivre, Argent, Or Message-ID: References: NNTP-Posting-Host: lovelace.ada-france.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: melchior.cuivre.fr.eu.org 1086745243 71236 212.85.156.195 (9 Jun 2004 01:40:43 GMT) X-Complaints-To: usenet@melchior.cuivre.fr.eu.org NNTP-Posting-Date: Wed, 9 Jun 2004 01:40:43 +0000 (UTC) To: comp.lang.ada@ada-france.org Return-Path: In-Reply-To: ; from Richard Riehle at Tue, 08 Jun 2004 02:35:52 GMT X-Mailer: Mail/@ [v2.44 MSDOS] X-Virus-Scanned: by amavisd-new-20030616-p7 (Debian) at ada-france.org X-BeenThere: comp.lang.ada@ada-france.org X-Mailman-Version: 2.1.4 Precedence: list List-Id: "Gateway to the comp.lang.ada Usenet newsgroup" List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Xref: g2news1.google.com comp.lang.ada:1258 Date: 2004-06-09T05:32:19+04:00 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. Commercial data processing domain in those times required data-based (and not algorithm-based) structuring. Therefore "structured programming" in Dijkstra's sense was absolutely useless for most of applications in that domain, and can be even harmful indeed. > Even after the improvements in the 1985 >standard, COBOL programmers continued to use the language in >stupid ways. Well, there is a section in Dijstra's book "Discipline of Programming", in which the famous author fell into stupidity. It is the section, in which he tried to prove that "commercial" (commercial data processing) programming isn't different in any meaningful way from other kinds of programming (probably meaning scientific programming). The author honestly provided an example and finished with a complete program. Reading that program, and being an expert in that application domain (that time) I concluded that the program is very bad, it would be disaster to put that program on production line, and that this program must be completely rewritten. So that example in fact proved that commercial data processing is (was) different indeed. Several years after that, I read an article (I can't remember the title and the journal, but I think that the name of the author was Lucas or something like that) in which that difference was explained very clearly: in scientific programming the algorithms are eternal - a method for solving a certain kind of equations remains right forever; but in commercial data processing the algorithms are volatile - the rules for calculation of taxes are changed rather frequently. > The ANSI-1985 standard added scope terminators to the IF, READ, > and PERFORM statements, added an in-line PERFORM, added the > powerful EVALUATE statement, and enabled subroutine calls by > both value and reference. These and many other enhancements to > the language were substantial improvements. However, most > COBOL programmers took a long time to learn to use them. > > The COBOL EVALUATE statement is one of the most powerful > constructs of any existing programming language. I wish we had > something like it in Ada, but we don't. I remember that several years ago Robert Dewar remarked (here in comp.lang.ada or elsewhere) that the concept of "object" in current COBOL standard is more rich and complex than even in C++ (and certainly more rich and complex than in Ada). Alexander Kopilovich aek@vib.usr.pu.ru Saint-Petersburg Russia