bean@putter.wpd.sgi.com (Bean Anderson) (09/13/90)
Ada has a new standard coming down the pike that addresses, amoung other things, Ada's floating point weaknesses and should make it acceptable in the high speed computation environments that traditionally have been dominated by Fortran. Many major traditional Fortran users are already switching over to Ada (e.g. NASA). Fortran 9X is becoming a complex language and those who want the extra features are going to switch to Ada -- those who do not want the extra features will stick with Fortran 77. Therefore, Fortran 9X will not be a major commercial language. I've heard this argument from several sources and I've seen the evidence myself of the switch to Ada. I know of several major companies that are either not doing a Fortran 9X compiler or are only paying lip service to the project. Obviously, those of us in the compiler business need to predict as accurately as possible what the customer base really wants (as opposed to what *we* think they need) in order to plan our future work. So, netland, what is the future for Fortran 9X? Is this argument just so much hogwash? Will Fortran live forever? Bean
maine@elxsi.dfrf.nasa.gov (Richard Maine) (09/14/90)
On 13 Sep 90 01:37:50 GMT, bean@putter.wpd.sgi.com (Bean Anderson) said: Bean> Obviously, those of us in the compiler business need to Bean> predict as accurately as possible what the customer base Bean> really wants (as opposed to what *we* think they need) in Bean> order to plan our future work. Bean> So, netland, what is the future for Fortran 9X? Is this Bean> argument just so much hogwash? Will Fortran live forever? (Hi Bean) Obviously a religious question, so let me be sure to say that my crystal ball is broken today. I don't know what "the people" will want, other than to be fairly confident that different ones of them will want different things. As for myself and myself only... I already have several thousand lines of Fortran 90 code. (No, I haven't yet found a compiler to start debugging it with). I experimented a bit with Ada, and though I liked some features a lot, I went back to Fortran for my work. I design in Fortran 90 for future code. Stuff that has to run today I code in Fortran 77. In some cases, I'm playing with doing initial design in Fortran 90 and then making "temporary" Fortran 77 versions based as much as feasible on the Fortran 90 design. I guess that answers your question for one user. I'll avoid going into the reasons for my feelings because. 1) I don't have time today to write a book and you don't want to read one anyway. 2) No sense in inviting too much religious war. Yes, others feel differently and, indeed, different answers may be better for them. --- -- Richard Maine maine@elxsi.dfrf.nasa.gov [130.134.64.6]
ian@argosy.UUCP (Ian L. Kaplan) (09/14/90)
I am only partially familiar with the old version of Ada, so I certainly do not know what new extensions have been proposed for the new version. I am, however, familiar with Fortran 90. In Fortran 90 arrays are first class objects on which all of the basic atomic operations (+, -, *, /) can be performed. Many intrinsics become array valued, user functions can return arrays and arrays can be sectioned. Although Fortran 90 has many other features, the support for array processing is, in my opinion, the most important. The Fortran 90 array syntax provides a natural way to express algorithms on multiprocessor machines. Unless the new Ada supports these features, I do not think that it will supplant Fortran 90. There are some side issues to keep in mind as well. 1. Fortran has "grown up" in the numeric community and supports features specificly for numeric programming. These features include the complex data type and a large set of intrinsics (for example, Fortran 90 supports intrinsics for transpose and matrix multiply). 2. When Ada first came out the major focus was on implementing a conforming Ada product. Since the language is so large and not all the semantic implications were clear, a number of vendors were late in this effort. Compared to the work on Fortran, I have seen much less focus on developing highly efficient optimizing Ada compilers. The performance of the compiled code is critical in large numeric applications. 3. People forget how many years it took before Fortran 77 started to become a widely adopted standard. The Fortran 90 standard has only recently been adopted, so it is probably a little early to start concluding that vendors will not implement it. How fast a vendor implements it may depend on the sort of machine they sell. Vendors selling vector processors (Alliant, for example) have already implement some of Fortran 90's array features. Vendors selling SIMD processors (MasPar and Thinking Machines) also implement the array features. While these are all tiny companies compared to IBM or DEC, these days most innovation comes from small companies. From what I can see, Ada has not met with broad acceptance outside of the goverment, where people are forced to use it. If I were to place a bet on a language that would start to eat into Fortran's dominance in numeric programming I would bet on ANSI C. Ian Kaplan ian@mapar.com argosy!ian@decwrl.dec.com These opinions are my own and not those of MasPar Computer Corp.
hht@sarnoff.sarnoff.com (Herbert H. Taylor x2733) (09/14/90)
**> Many major traditional Fortran users are already switching **> over to Ada (e.g. NASA). Fortran 9X is becoming a complex **> language and those who want the extra features are going to **> switch to Ada -- those who do not want the extra features **> will stick with Fortran 77. Therefore, Fortran 9X will not **> be a major commercial language. Actually, Fortran90 programs tend to be much less "complex" - as you use the term here - then Fortran77. Lots of F77 nested loops become clean single algebraic expressions. **> I know of several major companies that are either not doing **> a Fortran 9X compiler or are only paying lip service to the project. Care to name them? **> [comments deleted] **> So, netland, what is the future for Fortran 9X? There is of course the old joke: "We do not know what the scientific programming language of the year 2000 will be but we do know it will be called Fortran." **> Is this argument just so much hogwash? **> Will Fortran live forever? Having asked essentially this question to researchers at dozens of National labs during the past two years I am afraid the answer is, "Certainly for a long time". The prevailing logic is, "would you rather convert a million lines of something called 'fortran to something else called 'fortran or to something called, 'ADA ?" Some F90 re-writes may be nearly as difficult as complete ADA ports but to the nervous types making the decisions its still easier to say, "Fortran". This is not a flame at Fortran90 (which I happen to like) but merely an admission that re-coding an algorithm in a new version of any language which exploits new data structures can be harder then starting from scratch in a "different" language with the appropriate data structures. The future success of F90 (and perhaps any new or extended language) will closely "parallel" the emergence and success of systems which exploit its data structures. In particular it appears to be a natural for the massively parallel SIMD variety of systems - evidenced by announced products from TMC, MasPar, DAP etc. It also appears to be a natural for other SIMD systems such as the Princeton Engine, Wavetracer, etc. I am not aware of any commercial Fortran90 products for large MIMD systems but that doesn't mean it isn't being done. Anybody know what's happening in the MIMD world? herb taylor
lamson@sierra.crd.ge.com (scott h lamson) (09/14/90)
>From: maine@elxsi.dfrf.nasa.gov (Richard Maine) >Fortran 77. In some cases, I'm playing with doing initial design in >Fortran 90 and then making "temporary" Fortran 77 versions based as >much as feasible on the Fortran 90 design. That's interesting. I have been doing some "design" and prototype execution in Mathematica, and then implementing it in Fortran when I haven't changed it for a month. -- Scott| ARPA: lamson@crd.ge.com Lamson| UUCP: uunet!crd.ge.com!lamson (518)387-5795| UUCP: uunet!sierra.crd.ge.com!lamson General Electric Corporate Research and Development
joe@etac632 (Joe Fulson-Woytek) (09/14/90)
:On 13 Sep 90 01:37:50 GMT, bean@putter.wpd.sgi.com (Bean Anderson) said: : :Obviously, those of us in the compiler business need to :predict as accurately as possible what the customer base :really wants (as opposed to what *we* think they need) in :order to plan our future work. : :So, netland, what is the future for Fortran 9X? Is this :argument just so much hogwash? Will Fortran live forever? : I just want to clarify something from this original posting. NASA is a large agency. The fact that some highly visible projects are using ADA does not mean that NASA as a whole is doing so. For the thousand + users of our supercomputer center (Cray Y-MP and IBM mainframes) Fortran is clearly the language of choice and will remain so for the foreseeable future. Joe Fulson-Woytek
usenet@nlm.nih.gov (usenet news poster) (09/25/90)
In article <1990Sep13.013750.24378@relay.wpd.sgi.com> bean@putter.wpd.sgi.com (Bean Anderson) writes: >Many major traditional Fortran users are already switching >over to Ada (e.g. NASA). Fortran 9X is becoming a complex >language and those who want the extra features are going to >switch to Ada -- those who do not want the extra features >will stick with Fortran 77. Therefore, Fortran 9X will not >be a major commercial language. [...] >So, netland, what is the future for Fortran 9X? Is this >argument just so much hogwash? Will Fortran live forever? In the academic chemistry/biophysics world a big, complicated, buggy and late Fortran 90 would run a greater risk of pushing people into C and C++ than into Ada. There are two driving forces behind this, the portability and the enormous number of C programmers in the world. Even if the current draft of Fortran 90 is accepted and the world sets out to write compilers, it is going to be at least two or three years before an academic scientist computing in a heterogeneous Unix/workstation environment is going to have any reasonable prospect of expecting code which utilizes the full functionality of Fortran 90 to port freely (and bug freely) between platforms from different vendors. Since heterogneous workstation environments are the norm rather than exception, this is a critical issue. A clear indication that vendors were committed to prompt Fortran 90 implementation would be a big help. C++ is available on a number of platforms now, offers upward compatability (from C), and, with object definition and operator overloading, much of the syntactic simplification of Fortran 90 arrays with much greater versatility. The major problem that I see with C++ is that these object definitions are not part of the language so everyone is free to implement their own (incompatible) versions. Imagine programing in C if every site wrote their own version of stdio.h. I don't think the pointer code efficiency issues in Fortran 90 are a major issue. If a clear compact syntax reduces the number of bugs in the 95% of my code which account for 2% of the run time, I will gladly do a profiling run and recode the few inner loops where it really matters. > Bean David States