Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site opus.UUCP Path: utzoo!watmath!clyde!floyd!vax135!houxz!houxm!ihnp4!zehntel!hplabs!hao!cires!nbires!opus!rcd From: rcd@opus.UUCP (Dick Dunn) Newsgroups: net.lang,net.physics Subject: Re: Why FORTRAN Message-ID: <559@opus.UUCP> Date: Tue, 26-Jun-84 01:59:15 EDT Article-I.D.: opus.559 Posted: Tue Jun 26 01:59:15 1984 Date-Received: Fri, 22-Jun-84 07:32:31 EDT References: <2735@ecsvax.UUCP> <352@noao.UUCP> Organization: NBI, Boulder Lines: 34 I think thatthe following is a very poor argument in support of FORTRAN: >I think that, inetia apart, there are some good reasons for keeping fortran >around. These days the fastest computers have what might be loosely termed >'array processor' architectures, e.g. hardware vector operations (Cray & CDC205) >and array processor add-ons for vaxes. To make the best use of the speed of >these computers it is necessary to use a language that can easily take advantage >of the hardware features. An advantage of fortran for this task is that it is >a fairly simple language. I believe that it is the only language that has >had optimization features included for the array processor architectures... The first problem here is the confusion between "language" and "implementation". In fact, FORTRAN (the language) has NO support to speak of for vector operations. The "simplicity" of FORTRAN is a curse, not a blessing. It is only by considerable work inside FORTRAN compilers that they are able to generate any vector instructions at all. I rather pity the scientists and compiler writers: The scientist must absolutely rape his algorithms to turn all of the vector operations into explicit loops; then the compiler writer has to bend over backwards to rediscover the vector operations that were obscured in the coding. The real reason that FORTRAN hangs on in the scientific community is pure inertia. There is so much code written that most scientists can't afford NOT to use it. The huge body of existing code makes it economically worthwhile to create the "vectorizing" compilers, onerous tasks that they are. The primitive nature of FORTRAN doesn't make it more desirable to try other languages. Instead, it increases the inertia, because the programs are physically larger, less clear, and harder to maintain or modify. [Compatibility is an albatross.] -- Dick Dunn {hao,ucbvax,allegra}!nbires!rcd (303)444-5710 x3086 ...Cerebus for dictator!