fsmart wrote:
>
>
> All these discussions touch on good points, however I have not heard an
> argument
> pointing at the standard setting body, where, IMHO sits most of the blame
> for
> the very poor 'perception' that Fortran has today.
>
I think that this criticism is too strong. The next Fortran standard
will provide full support for object-oriented programming and thus will
keep the language up to date.
If the standards committees have to be criticized, it's only for the
late adoption of Fortran 90. But they have learned from their errors and
the current procedures will avoid the past problems (I hope).
Five years between standards appear to be an acceptable compromise.
Shorter upgrades are not technically possible because of the
administrative procedures (public reviews, international votes, document
correction, etc).
The real reason of the lack of popularity of Fortran 90 is the
overemphasis given today to C and C++. Get a look on the popular
magazines devoted to programming and what you see:
C, C++, Java and proprietary dialects such as Visual Basic and Delphi.
For all these languages, only C has an official standard. Thus, for
making a language popular, a priori standardisation is no longer an
issue. In fact, the standard will appear well after the language is in
widespread use.
When I have explained to some programmers that I develop software using
F90, I received often this reply: Why do you don't use C++ ? Everyone
is using it, so you much use it !(Sounds like a bad advertising).
This situation is not unique to Fortran. Take Ada 95, for example.
Does Microsoft offer such a compiler ? Not at all. This
clearly shows that the "state of the art" status of a given language
is not correlated to its popularity.
The popular programming magazines barely mention Ada 95 at all.
The only exception is Dr. Dobbs Journal that has presented few articles
on both Fortran 90 and Ada 95.
The reasons of the lack of popularity of Fortran can be summarized
as follows:
1. The late adoption of Fortran 90.
The official adoption of F90 by ANSI was in September 92!
Because of this, we have lost many users.
2. The ignorance of the existence of the language and of its
capabilities by the programming community.
For many, Fortran means punched cards and spaghetti programs
loaded with GOTOs.
This is where us, the F90 user base, has to do some PR. Some of the
C bigots that I have talked about have found their favorite language
less exciting when I have said to them that, with F90, I have never
spent days in chasing "wild" pointers that make programs crash.
3. The overemphasis given to C and C++
There is little we can do on this, except in cases such as those
mentioned in item 2.
4. The spartan nature of many compilers (now solved in many cases)
Until very recently, what was offered by the Fortran compiler vendors
was a compiler, a linker but very little else. It is very hard
to develop a full blown GUI based application with this. Now,
this issue has been addressed by providing full Windows API access
by the major vendors on the Windows/Intel platform and even
COM/OLE object access (Digital Visual Fortran only). But Fortran
bindings remain problematic for X-Windows and Motif (Unix).
Good commercial GUI libraries are also now
available. The C interface feature provided by F2002 should
solve this problem in the long term.
5. The low percentage of scientific/engineering development in
comparison to the total software development activity.
Most of the current software developement has nothing to do
with science and engineering. This is sad but true. There is,
however, a particular domain where Fortran should be pushed
more: the areas of "virtual reality" and computerized film
animation should be domains where F90/95 would excel.
The opportunities for automatic
parallelisation of code are far more
numerous with F90 than C. Now that a portable OpenGL binding has been
developed, the F90 user base has now an opportunity to do PR in
this area.
Regards,
Jean Vezina
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|