From: Fei Liu on
James Van Buskirk wrote:
> "Tobias Burnus" <burnus(a)net-b.de> wrote in message
> news:9d7af86f-e21e-4ae5-8b81-ec639a68a855(a)m3g2000hsc.googlegroups.com...
>
>> Somehow, it is quite easy to run into compiler bugs with Fortran. A
>> colleague of mine, coming from computer science and being a friend of
>> C once complained: With C, if the compiler complains, it is a bug in
>> the program -- with Fortran one never knows whether it is bug in the
>> program or in the compiler. He continued then that it is not seldom to
>> encounter an internal compiler error with Fortran compilers, while it
>> is much harder to encounter one with C compilers.
>
> The obvious problem is the size of the language. It got bigger from
> f77 to f90, from f90 to f95, and from f95 to f03. The increase in
> size from f90 to f95 is often underestimated by those who haven't
> tried to make f95 compilers work on specification expressions.
> Although I like the new features and try to use them as they become
> available, I worry that they just make it too expensive to write
> an f03 compiler and that they tend to go against the grain of what
> used to be the Fortran culture of handing the new kid a Fortran
> manual and telling him to bootstrap himself to being a Fortran
> programmer. It was a very common practice in the f66 and f77 days,
> but starting with f90 there are more possibilities of indirect ideas
> that take more subtlety of though to be able to use successfully or
> even to understand why they are there in the language in the first
> place. I worry that Fortran is taking a road towards being a
> language that's expensive to write a compiler for and requires
> expensive training to be able to really use its features and yet is
> still denigrated by CS types (CS majors really are taught that
> Fortran is FORTRAN 77 and to scoff at the mere mention of the
> language.)
>
The problem with lack of Fortran teaching in CS is many-folds imo

1) It's not usually a desired skill to locate a job after graduation;
2) Difficulty of using Fortran to implement data structures and
algorithms. Even simpler things such as binary trees or hash tables do
not have a lot of Fortran implementations. I don't know if there is any
implementation of a suffix tree done in Fortran. Although Fortran has a
form very close to pseudo code;
3) Many important CS concepts such as database, networking, operating
system simply has no relevance with Fortran...
4. Fortran sucks at information mining at this information age.

However Fortran has a kind of beauty with it, it's hard to explain, it
makes you feel closer to the bare machine and the circuits powering it
and it's warm and fuzzy... It's that feeling that you feel when you
program in assembly...

Fei
From: Richard Maine on
Fei Liu <fei.liu(a)gmail.com> wrote:

> 3) Many important CS concepts such as database, networking, operating
> system simply has no relevance with Fortran...

I won't comment on most of the posting. It has other things I disagree
with, but I won't comment on them. The above, however... perhaps there
is a problem with the English in that I don't know precisely what "has
no relevance with" is intended to mean. But for at least some obvious
interpretation, it is false - trivially provably so, not just a matter
of opinion.

I personally have done quite a lot of database, networking, and
operating system interface from Fortran. I also know many other people
who have. So it is simply not true that they "has no relevance with
Fortran".

If you want to argue about other aspects such as how convenient it might
or not might be, then that's back to subjects I'll decline to debate.
But if those are what you mean by "has no relevance with", then we have
a language problem unrelated to computers.

--
Richard Maine | Good judgement comes from experience;
email: last name at domain . net | experience comes from bad judgement.
domain: summertriangle | -- Mark Twain
From: Tobias Burnus on
On 4 Apr., 19:21, Gordon Sande <g.sa...(a)worldnet.att.net> wrote:
> On 2008-04-04 12:26:22 -0300, Tobias Burnus <bur...(a)net-b.de> said:
> Can one ask, and hope for a straight answer, whether these are commercial
> Fortran compilers or not?

The latest ICE was in sunf95, but ICE, rejects valid etc. problems
were also found in ifort, gfortran, pathscale and some more which I do
not remember.

I have to admit that I do not see much difference between opensource
and commercial compilers in this regard; it depends more on the
individual vendor and the version (e.g. ifort 8 was quite instable and
also gfortran 4.1 had several minor problems while ifort 9.1/10/10.1
or gfortran 4.3 work quite well).

The default compilers are ifort (for serial and MPI builds), gfortran,
sunf95, openf95 and g95; after every check in, the program is
automatically build with those compilers. I think the developer
themselves mostly use gfortran and ifort. The code is essentially
Fortran 90/95, but with configure check also things like Fortran
2003's command-line arguments or type(c_prt) are used. The idea of
using allocatable components was dropped due to compatibility issues.


> The observation is that GCC is probably quite heavily used but that Gfortran
> and G95 and much less well exercised. There is considerable less development
> effort spent on the Fortran components of GCC than on the C related components.
> If I understand it many of the GGC C developers are in fact full time
> professional compiler writers paid by their organizations to contribute to
> GCC while the Fortran components are being done by volunteers (as a hobby
> like the signature below).

While this is true, many also work only on the middle end
(optimization etc.) and target specific code, which is used by for
Fortran and C alike. Additionally, there are occasionally patches by
middle-end developers. OpenMP (2.5 and the being-developed 3.0
support) is also from a middle-end person. The cray pointers and
Bind(C) development was paid and gfortran had and presumably will have
a Google Summer of Code student. But still, most of the development
happens in the spare time.

With regards to the usage: I think gfortran and g95 have the advantage
that they are free; that means that they are much more tested than
many commercial compilers (though they have a head start by being
longer on the market. And that the gfortran testsuite is run on many
systems from embedded to big Unix machines also helped/helps to find
bugs.

James Van Buskirk wrote:
> I worry that Fortran is taking a road towards being a
> language that's expensive to write a compiler for and requires
> expensive training to be able to really use its features and yet is
> still denigrated by CS types (CS majors really are taught that
> Fortran is FORTRAN 77 and to scoff at the mere mention of the
> language.)

I have the feeling that for computer science Fortran plays essentially
no role. It is much more used in Physics, Chemistry, Geology,
Meteorology etc. than in CS. In my CS course we only used Java and
Haskell, while in my (obligatory) computational physics course Fortran
or C were used.

Tobias
From: Gerry Ford on


"Tobias Burnus" <burnus(a)net-b.de> wrote in message
news:05e1f737-2e23-4b9f-a398-7a0e51ace9ae(a)s33g2000pri.googlegroups.com...
> On 4 Apr., 19:21, Gordon Sande <g.sa...(a)worldnet.att.net> wrote:
>> On 2008-04-04 12:26:22 -0300, Tobias Burnus <bur...(a)net-b.de> said:
>> Can one ask, and hope for a straight answer, whether these are commercial
>> Fortran compilers or not?
>
> The latest ICE was in sunf95, but ICE, rejects valid etc. problems
> were also found in ifort, gfortran, pathscale and some more which I do
> not remember.
>
> I have to admit that I do not see much difference between opensource
> and commercial compilers in this regard; it depends more on the
> individual vendor and the version (e.g. ifort 8 was quite instable and
> also gfortran 4.1 had several minor problems while ifort 9.1/10/10.1
> or gfortran 4.3 work quite well).
>
> The default compilers are ifort (for serial and MPI builds), gfortran,
> sunf95, openf95 and g95; after every check in, the program is
> automatically build with those compilers. I think the developer
> themselves mostly use gfortran and ifort. The code is essentially
> Fortran 90/95, but with configure check also things like Fortran
> 2003's command-line arguments or type(c_prt) are used. The idea of
> using allocatable components was dropped due to compatibility issues.
>
>
>> The observation is that GCC is probably quite heavily used but that
>> Gfortran
>> and G95 and much less well exercised. There is considerable less
>> development
>> effort spent on the Fortran components of GCC than on the C related
>> components.
>> If I understand it many of the GGC C developers are in fact full time
>> professional compiler writers paid by their organizations to contribute
>> to
>> GCC while the Fortran components are being done by volunteers (as a hobby
>> like the signature below).
>
> While this is true, many also work only on the middle end
> (optimization etc.) and target specific code, which is used by for
> Fortran and C alike. Additionally, there are occasionally patches by
> middle-end developers. OpenMP (2.5 and the being-developed 3.0
> support) is also from a middle-end person. The cray pointers and
> Bind(C) development was paid and gfortran had and presumably will have
> a Google Summer of Code student. But still, most of the development
> happens in the spare time.
>
> With regards to the usage: I think gfortran and g95 have the advantage
> that they are free; that means that they are much more tested than
> many commercial compilers (though they have a head start by being
> longer on the market. And that the gfortran testsuite is run on many
> systems from embedded to big Unix machines also helped/helps to find
> bugs.
>
> James Van Buskirk wrote:
>> I worry that Fortran is taking a road towards being a
>> language that's expensive to write a compiler for and requires
>> expensive training to be able to really use its features and yet is
>> still denigrated by CS types (CS majors really are taught that
>> Fortran is FORTRAN 77 and to scoff at the mere mention of the
>> language.)
>
> I have the feeling that for computer science Fortran plays essentially
> no role. It is much more used in Physics, Chemistry, Geology,
> Meteorology etc. than in CS. In my CS course we only used Java and
> Haskell, while in my (obligatory) computational physics course Fortran
> or C were used.
I haven't read the entire thread. I would note that I get check-marks for
some of the things tobias lists, e.g. physics and chem.

I do feel like a quick study tonight, having observed my first caldera.

50 cubic miles blown off. 12-15 units in diameter. Less than 6% grade. I
never took geology but I do know--labparnters in chem--Dr. Mancuso's
daughter.
--

"That this social order with its pauperism, famines, prisons, gallows,
armies, and wars is necessary to society; that still greater disaster
would ensue if this organization were destroyed; all this is said only
by those who profit by this organization, while those who suffer from it
- and they are ten times as numerous - think and say quite the contrary."

~~ Leo Tolstoy


From: Ken Plotkin on
On Fri, 4 Apr 2008 10:15:20 -0600, "James Van Buskirk"
<not_valid(a)comcast.net> wrote:

[snip]
>an f03 compiler and that they tend to go against the grain of what
>used to be the Fortran culture of handing the new kid a Fortran
>manual and telling him to bootstrap himself to being a Fortran
>programmer. It was a very common practice in the f66 and f77 days,
[snip]
>place. I worry that Fortran is taking a road towards being a
>language that's expensive to write a compiler for and requires
>expensive training to be able to really use its features and yet is
>still denigrated by CS types (CS majors really are taught that
>Fortran is FORTRAN 77 and to scoff at the mere mention of the
>language.)

It's becoming more of a programmer's language (despite real
programmers thinking it's too old timey) and less of an engineer's
langauge. Soon it will be out of reach of engineers, but the CS
culture will never embrace it.

The next version after '03 should be called Fortran Flying Dutchman.
:-)

Ken Plotkin