[comp.lang.fortran] Fortran 9X replaced by Ada 9X ?

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