[comp.lang.fortran] FORTRAN 88

doon@unrvax.UUCP (10/27/87)

Hi,
	I've heard that Fortran-88 is about to debut. Could somebody
tell me about this new-and-improved Fortran or where I may read about it?

	Thanks,
	Harry Reed
	doon@unrvax

jkw@a.UUCP (Jay Wooten) (10/28/87)

In article <780@unrvax.UUCP>, doon@unrvax.UUCP (Harry W Reed) writes:
> 
> Hi,
> 	I've heard that Fortran-88 is about to debut. Could somebody
> tell me about this new-and-improved Fortran or where I may read about it?

The FORTRAN 8X proposed standard has been in the works for several years
and is still far from approval by ANSI, much less available as a real
compiler from any vendor.  Many vendors oppose the latest 8X proposal
because it is a major change (33 new statements, 14 "decremented" statements).
Some say that it really is a new language because it is so far removed from
F77.

For more info on the debate and f8X's current status, see pp. 22-28 of the
October 15 DATAMATION magazine.

Probably about as close to F8X as you'll come for a while is the VMS FORTRAN
compiler which has many extensions which are similar to some of those proposed
for 8X.

	   Jay Wooten  Los Alamos National Lab  ARPA: jkw@lanl.gov

cdb@hpclcdb.HP.COM (11/04/87)

Please see my reply to the basenote by bct@its63b for all the details and
options I know for joining th public review.

						Carl Burch
						hplabs!hpda!cdb

brainerd@unmvax.unm.edu (Walt Brainerd) (10/18/88)

Another point I forgot to mention previously (the significance of which
you can puzzle over for yourself) in response to someone who noted that
the Europeans seem to represent the consumer viewpoint more than X3J3:

The document favored by ISO/WG5 was put into its final form by five
people on X3J3 who all represent users; the hardest opposition is
coming from some of the vendors.

psmith@mozart.uucp (Presley Smith) (10/19/88)

In article <2045@unmvax.unm.edu> brainerd@unmvax.unm.edu (Walt Brainerd) writes:

Let us explore this a bit:

>Another point I forgot to mention previously (the significance of which
>you can puzzle over for yourself) in response to someone who noted that
>the Europeans seem to represent the consumer viewpoint more than X3J3:

I don't believe that the European's public comment represent the consumer
viewpoint any more than the U.S. public comments represents the consumer
viewpoint.   What are the facts...

1.  The Europeans were invited to a series of "FORTRAN Forums."  These 
Forums presented the positive side of the FORTRAN 8x standard and pumped
up the users to respond to "get the standard out...without delay."  There
are many of these comments in the European response.  In fact, I could 
list the particular comment numbers here, but I will not.

I don't believe that any of these Forums discussed the information that
was presented in the Steve Rowan's article that was posted on the net
today, also.   I don't believe these Forums discussed that FORTRAN 8x
is actually bigger than Ada, that with depedent compilation, compilers
will run much slower, and that implementation of some of the new 
constructs of FORTRAN 8x would cause major compiler efforts because
they don't fit really well with the old FORTRAN construncts.  I'll bet
that not a one of these Forums discussed the amount of time it took
to get FORTRAN 77 implemented on the majority of the machines in the 
world and how much more complex FORTRAN 8x is to implement. 

2.  In the U.S. various groups received a more balanced set of 
information.  Presentations presented the new features, benefits
of each, and the drawbacks of each.   Discussions did not center
around the "beauty" of the "modern FORTRAN" language, but around
how it would help the user and how it would hurt the user.   In
the U.S. we also discussed how it would be more complex for an
engineer to pick up this 8x language quickly (one would need a 
better computer science background...) and issues of sustaining
programs that were created with a mixture of FORTRAN 77 and 
FORTRAN 8x constructs...

In Europe, many of the presenters of the Forums were users that 
were in favor of making FORTRAN a "modern language" that would
"compete" with other languages like Ada and Pascal. 

In the U.S. most presentations were made by the Vendors.  The 
ones that must support the FORTRAN user base and provide quality
products for their use.   It seems strange that the major 
vendors: IBM, DEC, and UNISYS all said "NO" to FORTRAN 8x.
Has anyone really looked at the why?  It's spelled out in their
ballot comments on FORTRAN 8x, but many tend to ignore those
and claim that the vendors just don't want to implement a 
new FORTRAN.   Take a look at those ballot comments...

>The document favored by ISO/WG5 was put into its final form by five
>people on X3J3 who all represent users; the hardest opposition is
>coming from some of the vendors.

Your are right, the hardest opposition is coming from the vendors. 
They believe that FORTRAN 8x is too big, too complex, has too many
"neat" things that are not needed or wanted by their user base.
They also understand that it will take years to produce quality
FORTRAN compilers for a standard this complex.  

It's real simple.  If you don't get the vendors to sign up to
producing compilers and supporting those compilers, NO new standard
will be successful.   It's ALGOL 68 again.  A beautiful language 
that none of the major vendors implemented.   That could have a 
lot to do with why we are still programming in FORTRAN and not 
ALGOL 68.  

The other problem with this statement is that "five people on X3J3"
put together this ISO/WG5 document from documents that had NOT been 
accepted by X3J3 at the last X3J3 meeting as being acceptable for a base
document for the new FORTRAN standard.   In fact, the delegation from X3J3
to the WG5 meeting was directed by X3J3 NOT to support this document
as a base for the new FORTRAN standard.    And now "five people on
X3J3" are putting this document, that was rejected at the last X3J3
meeting, into final form.  I don't believe this "five people on X3J3" 
have been operating on the instructions of X3J3 to produce this document.
From the votes at the last X3J3 meeting and the direction from X3, it 
is unclear that X3J3 or X3 would authorize this work.

One other thing to note.  ANY document given to any ISO/SC/WG organization
must be passed throughper the procedures sified in the SD-2.  up, p
If this document is not processed properly, major internation
problems may result. 

metzger@mozart.uucp (Bob Metzger) (10/19/88)

DISCLAIMER:  These are my opinions, not my employers.  


I found Mr. Brainerd's most recent postings highly amusing.
He seems to think that dragging the FORTRAN 8x discussions down to
the level of the US Presidential elections is his only hope of
rescuing his draft (he is the editor of the FORTRAN 8x draft
that the U.S. public comment rejected.)

There's a future for you in political advertising, Mr. Brainerd.
For example, this assertion that the "Gang of 5" that wrote the 
current draft are "users".   You know as well as I that they are mostly,
like yourself, actually Ph.D. computer scientists.  I think it is safe
to assert that if there is any class of programmers who are not typical
FORTRAN users, it is Ph.D. computer scientists.   Engineers and
physical scientists are the real FORTRAN users.  

Or how about the assertion that it is the vendors, not the users,
who oppose your draft, Mr Brainerd?  How do you explain the fact that
the revision proposal that got the largest number of votes in August,
and is the one that the majority of the vendors support, is written by 
a mathematician from Boeing?  A real non-computer scientist who doesn't
work for a computer vendor.  Sounds like a real FORTRAN user to me!

And why do you think that all those vendors oppose the current draft,
Mr. Brainerd? Because the vendors employ people who have actually
implemented production quality compilers, and who know that this language,
which is certainly not FORTRAN, is a recipe for disaster.

I realize that you doubt the value of the hundreds of years of compiler
development experience represented by the nearly 2 dozen organizations
that oppose the current draft.  Compiler experts from such fierce competitors
as IBM and DEC and UNISYS all agree that the current draft is not acceptable.
The FORTRAN user community would do well to realize that such concerted
opposition could only occur if there were real technical flaws in the
current draft.

Yes, there's a future for you in political advertising, Mr. Brainerd.


DISCLAIMER:  These are my opinions, not my employers.  

bobal@microsoft.UUCP (Bob Allison) (10/19/88)

[Walt wrote in note previous to the one referenced:]
>Two points have been overlooked in the recent discussion of the happenings
>in the wonderful world of Fortran standards:
>
>1.  X3J3 is "tasked" by WG5 of ISO to create the ISO standard.

    This may be true, but it doesn't seem to have any procedural
    significance: witness the X3 direction to X3J3.  Also, the 
    private discussion with an X3 member who asserted that if 
    WG-5 tried to take the current draft and use it without going
    through X3J3 that X3 would move to defend its ownership of the
    document (I guess through copyright) by whatever means are necessary.

>
>2.  There is only one document that is close enough to be a standard
>    in the next five years; it is the one favored by ISO/WG5.  So the choices
>    are:  a) the same ISO and ANSI standard or
>    b) an ISO standard and _no_ ANSI standard (at least not for several years).

    I don't buy this for an instant: I don't understand what "could be"
    means, but certainly the draft sent for public review, the original
    FORTRAN 77 text, and dozens of other permutations "could be a standard
    in the next five years".  Given five years (your number above) I believe
    any standard is possible.

>
>Also, from what I have heard, it is quite likely that any ISO standard
>would become a U. S. Federal (FIP) standard whether it is an American
>national standard or not, so vendors wanting to sell to Uncle Sam would
>have to implement it.

    I don't think this is predictable at this time.  The FIPS process is
    completely independent and also has review cycles.  I believe either
    conclusion can be argued with the same confidence (namely, none).

In article <2045@unmvax.unm.edu> brainerd@unmvax.unm.edu (Walt Brainerd) writes:
>Another point I forgot to mention previously (the significance of which
>you can puzzle over for yourself) in response to someone who noted that
>the Europeans seem to represent the consumer viewpoint more than X3J3:
>
>The document favored by ISO/WG5 was put into its final form by five
>people on X3J3 who all represent users; the hardest opposition is
>coming from some of the vendors.

    Well, I find this an over-simplification: there is some pretty strong
    resistance from Boeing, SHARE (the IBM users group), and (starting
    next meeting) DECUS.  There are vendors in favor of the ISO/WG5 document 
    and other users opposed.  This whole users/vendors thing is just jingoism.

    At the last meeting, the document closest to ISO/WG5 went down 
    11-20-7, and 11-24-5 depending on the time of week.  I do not believe
    there were 24 people representing vendors and only 11 representing
    users in the room.

These things are not so clear cut as some would have you believe: I
know that (contrary to the votes of members of the committee from the
same organizations) employees wrote in public review letters against the
draft from Amoco and NCAR, and in favor of the draft from employees of 
Boeing and users of IBM machines.  In the end result, the votes come 
down to who is voting: we have seen organizations change votes when a 
new person came along from that organization.  This is especially
true of "vendors" (so I guess the companies' brainwashing methods have
not been perfected yet ;-).

Bob Allison
PS.  I was gone for a week, so I only saw two responses to my note about
8X pointers (one about double colons, one about "=>" being only one character
different from "=").  Any I missed?  Everyone pretty happy with this
proposal?

link@stew.ssl.berkeley.edu (Richard Link) (10/20/88)

In article <660@convex.UUCP> metzger@mozart.UUCP (Bob Metzger) writes:
>
>For example, this assertion that the "Gang of 5" that wrote the 
>current draft are "users".   You know as well as I that they are mostly,
>like yourself, actually Ph.D. computer scientists.  I think it is safe
>to assert that if there is any class of programmers who are not typical
>FORTRAN users, it is Ph.D. computer scientists.   Engineers and
>physical scientists are the real FORTRAN users.  

I agree !!!!!

*MY* biggest problem with F88 is that it looks like FORTRAN was
hijacked by a bunch of academic Pascal/C advocates who insist on
turning it into an all-purpose language, instead of the efficient
number cruncher it was designed to be.

I get the impression that the committee members did not learn FORTRAN
as their first language. Hence, the bias towards incorporating
"modern", but totally unnecessary, constructs into the draft standard.
We've already got Pascal, Modula-2, Ada, and C. There is no need to
re-invent these languages.

My background is in the development of complex numerical models for the
analysis and interpretation of space physics data. I taught FORTRAN for
5 years, and ALGOL (!) for 2. If you can give me a better number cruncher,
then I'm all in favor. However, I see little to recommend in the new
draft standard.

In our laboratory, we select the best language available for the job at
hand. Our satellite control functions are coded in C, but the scientific
analysis programs are in FORTRAN.

As it stands, I think that the proposed draft standard will meet with the
same success as ALGOL-68 and PL/1.

To ANSI committee members: Go think about it for a while, and come back
when you have a language called FORTRAN.

Dr. Richard Link
Space Sciences Laboratory
University of California, Berkeley
link@ssl.berkeley.edu

mcdonald@uxe.cso.uiuc.edu (10/20/88)

>Another point I forgot to mention previously (the significance of which
>you can puzzle over for yourself) in response to someone who noted that
>the Europeans seem to represent the consumer viewpoint more than X3J3:
It certainly looked to me from the list of about 400 responses that
was posted on the net that the "consumers" from the US were more
opposed than for. The European responses constituted the core of the
yes votes. I don't see how Europeans should expect their "votes",
if you can call them that, should count at all for a US standard.
 

hirchert@uxe.cso.uiuc.edu (10/21/88)

Presley Simith(psmith@mozart.uucp) writes:
>I don't believe that the European's public comment represent the consumer
>viewpoint any more than the U.S. public comments represents the consumer
>viewpoint.   What are the facts...

>1.  The Europeans were invited to a series of "FORTRAN Forums."  These 
>Forums presented the positive side of the FORTRAN 8x standard and pumped
>up the users to respond to "get the standard out...without delay."  There
>are many of these comments in the European response.  In fact, I could 
>list the particular comment numbers here, but I will not.

and, as you note later, most U.S. commenters got their information from
presentations made by vendors opposed to the draft.  Because of ISO rules,
the European presentations were allowed to give attendees copies of the draft.
Because of X3/CBEMA rules, attendees of U.S. presentations had to order theirs
from Global Engineering.  Many either chose not to because of cost or received
their copies from Global Engineering so late that they did not have time to
adequately review them, so they simply echoed what was presented to them.  (I,
too, could list particular comment numbers.)  Do you really to argue that
people that had copies of the draft are less representative than those who did
not?

>          ...  I don't believe these Forums discussed that FORTRAN 8x
>is actually bigger than Ada,

The measures that call Fortran 8x bigger than Ada also call FORTRAN 77 about
the same size as Ada.  I find such measures less than convincing.

>                             that with depedent compilation, compilers
>will run much slower, 

IMHO, anyone who writes a compiler that is slower because of dependent
compilation is probably less than competent.  I have access to a number of
compilers and assemblers with similar features, and every one of them runs
substantially faster with these features used than without them.  (More
subjectively, I find there performance when these features are not used to be
comparable to that of processors that didn't have the features in the first
place.)

>                      and that implementation of some of the new 
>constructs of FORTRAN 8x would cause major compiler efforts because
>they don't fit really well with the old FORTRAN construncts.  

This is one of those generalizations I keep hearing without supporting
specifics.  Which features do you have in mind?  How is it that they don't
fit with the old constructs?  How will this cause major compiler efforts?
(The major compiler effort that is most obvious to me is the optimization of
array expression evaluation, but most of the people I know opposed to the
Fortran 8x draft still support the array language.)

>                                                              I'll bet
>that not a one of these Forums discussed the amount of time it took
>to get FORTRAN 77 implemented on the majority of the machines in the 
>world and how much more complex FORTRAN 8x is to implement. 

and I'll bet that the U.S. presentations didn't talk about how
unrepresentative it is to consider the implementation time for many of those
FORTRAN 77 implementations.  (Many vendors took FORTRAN 77 as an opportunity
to write new compilers based on new compiler technology (e.g., writing in HLL's
rather than assembler, using common back-ends for code generation, using
automatically generated parsers, etc.  On the other hand, vendors seem inclined
to implement Fortran 8x as extensions to their existing products.  Indeed,
many have already implemented large parts of 8x in precisely this manner.)

>2.  In the U.S. various groups received a more balanced set of 
>information.  Presentations presented the new features, benefits
>of each, and the drawbacks of each.   Discussions did not center
>around the "beauty" of the "modern FORTRAN" language, but around
>how it would help the user and how it would hurt the user.   In
>the U.S. we also discussed how it would be more complex for an
>engineer to pick up this 8x language quickly (one would need a 
>better computer science background...) and issues of sustaining
>programs that were created with a mixture of FORTRAN 77 and 
>FORTRAN 8x constructs...

My impression of many of the U.S. presentations is that they presented minor
"straw man" benefits of many of the new features (ignoring benefits I would
consider far more important), and then attacked them with "facts" that I find
highly questionable.  In my experience, the measure of a balanced presentation
is that both sides think it was biased towards the other side.  I don't see
that the U.S. presentations met this criterion any better than the European
presentations.  (I.e., presentations on both sides of the Atlantic tended to
reflect the biases of the presenters.)

>In Europe, many of the presenters of the Forums were users that 
>were in favor of making FORTRAN a "modern language" that would
>"compete" with other languages like Ada and Pascal. 

>In the U.S. most presentations were made by the Vendors.  The 
>ones that must support the FORTRAN user base and provide quality
>products for their use.   It seems strange that the major 
>vendors: IBM, DEC, and UNISYS all said "NO" to FORTRAN 8x.
>Has anyone really looked at the why?  

I sure have.  I happen not to agree with many of their technical arguments
and assertions.  (Unfortunately, for two of the above three, I find political
or tactical motives to be a better predictor of their positions than technical
considerations.  I still listen to their technical arguments carefully, but I
take them with a grain of salt, especially when they involve unsupported
assertions.)

>                                      It's spelled out in their
>ballot comments on FORTRAN 8x, but many tend to ignore those
>and claim that the vendors just don't want to implement a 
>new FORTRAN.   Take a look at those ballot comments...

>>The document favored by ISO/WG5 was put into its final form by five
>>people on X3J3 who all represent users; the hardest opposition is
>>coming from some of the vendors.

>Your are right, the hardest opposition is coming from the vendors. 
>They believe that FORTRAN 8x is too big, too complex, has too many
>"neat" things that are not needed or wanted by their user base.
>They also understand that it will take years to produce quality
>FORTRAN compilers for a standard this complex.  

There is substantial disagreement about what the user base wants and
needs; it depends a lot on how you ask the question and how you
interpret the answer.  Is it better to wait 5 years for a compiler with all
the features you want or to get some of them in 3 years and then wait another
10 years for the rest (if your're lucky)?  If you are certain you don't really
need the features in the second batch, 3 years is clearly better than 5.  If
you are certain you need features in the second batch, 5 years is clearly a lot
better than 13.  If you're uncertain, you'll have to judge for yourself.

>It's real simple.  If you don't get the vendors to sign up to
>producing compilers and supporting those compilers, NO new standard
>will be successful.   It's ALGOL 68 again.  A beautiful language 
>that none of the major vendors implemented.   That could have a 
>lot to do with why we are still programming in FORTRAN and not 
>ALGOL 68.  

Then again, the fact that no existing programs would run in the new language
may have had something to do with why there wasn't enough demand to get the
major vendors to do good implementations of Algol 68.  (Several of the major
vendors did implementations, but typically they weren't very impressive.)
Fortran 8x is designed to support the existing base of programs as well as
offer new features to the Fortran community.

>The other problem with this statement is that "five people on X3J3"
>put together this ISO/WG5 document from documents that had NOT been 
>accepted by X3J3 at the last X3J3 meeting as being acceptable for a base
>document for the new FORTRAN standard.   In fact, the delegation from X3J3
>to the WG5 meeting was directed by X3J3 NOT to support this document
>as a base for the new FORTRAN standard.    

That's not the way I remember it.  First of all, there was no "X3J3 delegation".
X3J3 instructed the U.S. delegation, all of whose members were also members of
X3J3.  X3J3 had no authority to instruct those X3J3 members who were part of
non-U.S. delegations.  Second, the instruction was not to present the ABMSW
plan and to avoid a situation in which WG5 took the job of producing the 
international standard away from X3J3.  As I read the meeting reports, these
instructions were followed.  The ABMSW plan was presented by a member of one of
the other delegations, and WG5 left the job of producing the international
standard in X3J3's hands but gave X3J3 more explicit instructions about what
it wants the international standard to contain.  The ball is now in X3J3's
court to decide whether there can be one standard for both ISO and ANSI.

>                                           And now "five people on
>X3J3" are putting this document, that was rejected at the last X3J3
>meeting, into final form.  I don't believe this "five people on X3J3" 
>have been operating on the instructions of X3J3 to produce this document.
>From the votes at the last X3J3 meeting and the direction from X3, it 
>is unclear that X3J3 or X3 would authorize this work.

Come on now.  X3J3 members are free, as individuals, to work on whatever they
choose.  It didn't X3J3 or X3 authorization for you and I to produce these
Usenet articles.  Given the position of WG5, it is not unreasonable for these
people to do work to show X3J3 what an implememtation of the WG5 instructions
might look like.  What, if anything, X3J3 does with this work is another issue
entirely.  That is where X3J3 votes, X3 authorizations, etc. come into play.

>One other thing to note.  ANY document given to any ISO/SC/WG organization
>must be passed throughper the procedures sified in the SD-2.  up, p
>If this document is not processed properly, major internation
>problems may result. 

Maybe, and then again, maybe not.  The Hague agreement is no longer in effect,
so ISO standards no longer have to be developed by national standards bodies.
Working documents of committees following ANSI procedures are required to be
in the public domain (except for the standard itself).  If X3J3 were to produce
a working document reflecting WG5's instructions, X3J3 might not be able to
"give" it to WG5, but there would be nothing wrong with WG5 "taking" it as the
basis for an ISO standard.  (Having said this, let me also say that I would
prefer that this not be the way things happen.)

Finally, let me make a couple of comments not directly in response to Presley's.
In the U.S., the trade press has tended to cover Fortran standardization only
when X3J3 produced a draft or report or when X3J3 had major internal
disagreements.  In Europe, on the other hand, there has been a great deal of
continuing coverage.  Also, most of the ISO delegates have been involved in
Fortran standardization for many years, while a large part of the X3J3
membership (especially among those opposed to the Fortran 8x draft) who joined
within the last couple of years.  Is it possible then that the greater
acceptance of the Fortran 8x draft outside the U.S. (and by WG5, in particular)
might be a result of long-term familiarity with its contents, reducing the
"fear of the unknown" factor and providing a greater opportunity to assess and
appreciate the benefits as well as the costs of the new features.

Regardless of its cause, I think we have to deal with WG5's position as it is.
Trying to ignore it by characterizing it as unimportant or unrepresentative is
just as much a cop out as ignoring the negative comments from the U.S.

Kurt W. Hirchert     hirchert@ncsa.uiuc.edu
National Center for Supercomputing Applications

ssd@sugar.uu.net (Scott Denham) (10/21/88)

In article <15744@agate.BERKELEY.EDU>, link@stew.ssl.berkeley.edu (Richard Link) writes:
> *MY* biggest problem with F88 is that it looks like FORTRAN was
> hijacked by a bunch of academic Pascal/C advocates who insist on
> turning it into an all-purpose language, instead of the efficient
> number cruncher it was designed to be.
> 
Now I'm certainly not defending the 8x standard as it exists today, but 
I do think that FORTRAN needs to become more of an "all-purpose" language
than it is in it's present form, if it is to survive.  Consider the 
dilemma the company I work for faces :  We have two "types" of FORTRAN
coders - researchers, who are trying to invent and refine new whiz-bang
techniques to find oil, and development programmers, who are attempting to
incorporate the good ideas of these researchers into stable, efficient,
user-friendly, veratile code (for the most part, the researcher's code is
none of these things).  These code segments must be merged into a much
larger system that requires a lot of "computer scientist" sort of tricks
(E.G. pointers, dynamic arrays, etc).  We currently do all of this in 
FORTRAN, but only through severe abuse of the published standard. In this
form, FORTRAN can hardly be considered portable.  So we need a language 
that is acceptable to the researchers, but allows us to build the whole
system without making it so machine-dependent that we are trapped to a
specific hardware platform.  A FORTAN 8X-like language would go a long way
towards solving this problem. Sure, we could try to convert the whole thing
to "C", but that would involve retraining about 95% of the people that have
to work with the code. 
Clearly, a more "modern" FORTRAN is the answer.  FORTRAN 66 was great,
until the underlying systems got more complex and the expectations of the
end user got higher (E.G. decent looking reports - much assisted by F77).
So the "if it ain't broke, don't fix it" argument doesn't carry very far
with us.  On the other hand, making it so complex that it would be 
SIMPLER to convert it to "C" or (gasp) ADA is certainly no solution 
either.  FORTRAN needs to grow up some. 
> 
> To ANSI committee members: Go think about it for a while, and come back
> when you have a language called FORTRAN.
> 
> Dr. Richard Link

RIGHT!!  Just be sure it's not still called FORTRAN 77 !!
 
 Scott Denham 
 Western Atlas International
 Houston, TX

The opinions experess herein are my own; my employer's only opinion is 
 that they have no opinion.

link@stew.ssl.berkeley.edu (Richard Link) (10/21/88)

In article <2870@sugar.uu.net> ssd@sugar.uu.net (Scott Denham) writes:
>In article <15744@agate.BERKELEY.EDU>, link@stew.ssl.berkeley.edu (Richard Link) writes:
>> *MY* biggest problem with F88 is that it looks like FORTRAN was
>> hijacked by a bunch of academic Pascal/C advocates who insist on
>> turning it into an all-purpose language, instead of the efficient
>> number cruncher it was designed to be.
>> 
>Now I'm certainly not defending the 8x standard as it exists today, but 
>I do think that FORTRAN needs to become more of an "all-purpose" language
>than it is in it's present form, if it is to survive.  Consider the 
>dilemma the company I work for faces :  We have two "types" of FORTRAN
>coders - researchers, who are trying to invent and refine new whiz-bang
>techniques to find oil, and development programmers, who are attempting to
>incorporate the good ideas of these researchers into stable, efficient,
>user-friendly, veratile code (for the most part, the researcher's code is
>none of these things).

I did not mean to imply that FORTRAN cannot be greatly improved. What I
am concerned about is changing the *scope* of the language - from
something that does a few things well, to something that does a lot of
things less well. There are penalties for increasing the size of the
language.

My central argument has not been challenged - one should use the
best tool for the job at hand. Why does your programming staff bend
F77 rules, when there are other languages like C that could probably
do those kinds of jobs much better? I guess I don't understand the 
rationale behind your company using a language not suited for the
application. This may be more of a management error, rather than a
FORTRAN shortcoming.

Dr. Richard Link
Space Sciences Laboratory
University of California, Berkeley
link@ssl.berkeley.edu

ssd@sugar.uu.net (Scott Denham) (10/21/88)

In article <15776@agate.BERKELEY.EDU>, link@stew.ssl.berkeley.edu (Richard Link) writes:
> 
> I did not mean to imply that FORTRAN cannot be greatly improved. What I
> am concerned about is changing the *scope* of the language - from
> something that does a few things well, to something that does a lot of
> things less well. There are penalties for increasing the size of the
> language.
 
No, I didn't think you meant Fortran couldn't be improved (though I have
spoken with folks who think F77 is perfect and should be frozen for
eternity!).  And FORTRAN should certainly NOT be extended to try to do
everything well; I have no desire to write another payroll program in
FORTRAN, and we don't need another PL/I.  The point I was trying to make
is that as the underlying systems get more complex, FORTRAN will have to
be able to do MORE things well to continue to be as useful as it has been.
> 
> My central argument has not been challenged - one should use the
> best tool for the job at hand. Why does your programming staff bend
> F77 rules, when there are other languages like C that could probably
> do those kinds of jobs much better? I guess I don't understand the 
> rationale behind your company using a language not suited for the
> application. This may be more of a management error, rather than a
> FORTRAN shortcoming.
> 
AH, but for the most part, FORTRAN is VERY well suited to the application;
I'm sure something like 99% of the code in our industry has been written
in FORTRAN, and I don't see that changing much.  There are just some 
things that are not so simple in FORTRAN 77 without breaking rules -
and virtually every commercial user I have discussed this with confesses
to using the same "tricks" for things like: 
    Dynamic sizing of arrays/Dynamic aquisition of storage.
    Variable length calling sequences.
    Structures of mixed type, or having to handle varying data representeation
As far as management policy goes, there are lots of good reasons to try
to mimimize the number of languages in use; there's always one or two
applications that work better in another language, but then you are  
"stuck" with it; we were burned by PL/I this way when one guy was allowed
to go off and develop a sizable system in it. He's long gone and nobody
else wants anything to do with PL/I - and if a site wants to run that
one application, they have to shell out something on the order of $500
a month for a PL/I license.  Consider also the cost of training, manuals,
and support tools, and the problems of having to support this code in
a number of data centers around the world. The cost is NOT small.  And
as a last point, some vendors (though I'd never mention IBM by name)
do an absolutly LOUSY job of integrating their language products; the 
thought of trying to get say "C", FORTRAN, and ADA modules linked up
and cooperating without their run-time libraries getting into a major 
war curls my hair!! 
  
> Dr. Richard Link
> Space Sciences Laboratory
> University of California, Berkeley
> link@ssl.berkeley.edu
 
 Scott Denham 
  Western Atlas International

cik@l.cc.purdue.edu (Herman Rubin) (10/21/88)

In article <15776@agate.BERKELEY.EDU>, link@stew.ssl.berkeley.edu (Richard Link) writes:
> In article <2870@sugar.uu.net> ssd@sugar.uu.net (Scott Denham) writes:
> >In article <15744@agate.BERKELEY.EDU>, link@stew.ssl.berkeley.edu (Richard Link) writes:
> >> *MY* biggest problem with F88 is that it looks like FORTRAN was
> >> hijacked by a bunch of academic Pascal/C advocates who insist on
> >> turning it into an all-purpose language, instead of the efficient
> >> number cruncher it was designed to be.
> >> 
> >Now I'm certainly not defending the 8x standard as it exists today, but 
> >I do think that FORTRAN needs to become more of an "all-purpose" language
> >than it is in it's present form, if it is to survive.  Consider the 
> >dilemma the company I work for faces :  We have two "types" of FORTRAN
> >coders - researchers, who are trying to invent and refine new whiz-bang
> >techniques to find oil, and development programmers, who are attempting to
> >incorporate the good ideas of these researchers into stable, efficient,
> >user-friendly, veratile code (for the most part, the researcher's code is
> >none of these things).
> 
> I did not mean to imply that FORTRAN cannot be greatly improved. What I
> am concerned about is changing the *scope* of the language - from
> something that does a few things well, to something that does a lot of
> things less well. There are penalties for increasing the size of the
> language.

I find C, with all its disadvantages, better than Fortran because of all
the things not present in Fortran.  I believe that some of them are addressed
in Fortran 8x, but probably not enough.

For good programming, it is necessary to have a versatile language.  Costs
of subroutine calls are high.  It is clearly impossible to write one line
of code in Fortran and the next line in C.  C has left too much out, also.

The only penalties for increasing the size of the language are the size, and
to a lesser extent the speed, of the compiler.  If you are producing a non-
trivial program, these costs are likely to be irrelevant.  It also may be
necessary to explicitly type all variables, instead of using default types.
Many source programs already do this to avoid errors.

All of the present languages deny the programmer the power of the machine.
If execution time is at all important, this is criminal.  Machine structure
is simpler than Fortran (any machine).  Of course, some things will be non-
portable.  This is not the catastrophe that some may think.  A few comments
can explain why the non-portable parts are and what they do.  If they only
constitute a small part of the program, the problems will not be great.

However, the portable problems arising out of the deficiencies of Fortran
are great, and should be addressed.
-- 
Herman Rubin, Dept. of Statistics, Purdue Univ., West Lafayette IN47907
Phone: (317)494-6054
hrubin@l.cc.purdue.edu (Internet, bitnet, UUCP)

tsh@mace.cc.purdue.edu (Greg Kamer) (10/21/88)

Article 779 of comp.lang.fortran:

In article <2870@sugar.uu.net> ssd@sugar.uu.net (Scott Denham) writes:
>In article <15744@agate.BERKELEY.EDU>, link@stew.ssl.berkeley.edu (Richard Link) writes:
>> *MY* biggest problem with F88 is that it looks like FORTRAN was
>> hijacked by a bunch of academic Pascal/C advocates who insist on
>> turning it into an all-purpose language, instead of the efficient
>> number cruncher it was designed to be.
>> 
>Now I'm certainly not defending the 8x standard as it exists today, but 
>I do think that FORTRAN needs to become more of an "all-purpose" language
>than it is in it's present form, if it is to survive.  Consider the 
>dilemma the company I work for faces :  We have two "types" of FORTRAN
>coders - researchers, who are trying to invent and refine new whiz-bang
>techniques to find oil, and development programmers, who are attempting to
>incorporate the good ideas of these researchers into stable, efficient,
>user-friendly, veratile code (for the most part, the researcher's code is
>none of these things).

This strikes a VERY familiar chord! The group I work for consists of
about 30 researchers who want to solve THEIR problem, don't want to
take the time to generalize the code and document it properly, and
yet feel perfectly justified about complaining when something I end
up having to install for general use doesn't solve the next problem 
that is encountered.

I maintain about 300,000 lines of very quickly mutating code in about
25 major programs and a bunch of ancillary programs for the
macromolecular crystallography group at Purdue. We use about 1/2 of
the time on the university's Cyber 205, and the ability to write
clean, fast code with a nice user interface is critical to our
productivity.

The division between researchers who want a simple, easy-to-learn
language and the requirements of making the code run fast enough
while part of a large package would be impossible to deal with
in "pure" Fortran 77 for the problems we deal with. Fortran 88 makes
several very important steps toward curing this problem. The most
important to us in terms of number crunching are the allocatable arrays
and vector syntax.
The process of integrating all of this into packages demands that
I either 
      1) use Fortran 77 syntax and end up with hard to follow code
         (doing database oriented work and making good interactive
	 menus is not nearly as easy or clear in Fortran as it is
	 in, say, Pascal or C).
      2) write it in another language, in which case nobody else
	 here will be able to read it

The record construct in particular DOES make this a more general purpose
language (we still need pointers!). This is good, because we are moving
away from separate number crunching programs that require a painfully
intimate knowledge of the operating system to use to fully integrated
packages designed to be used by a non-programmer. Integrating
the original pieces and parts in a clean manner will be a lot
easier with Fortran 88. In other words, what we want to do with
the programs has not changed, but our expectations of the quality
of the man/machine interface have risen. Its time to come out with
a language that has evolved to make that easier. Hardware and user
expectations have come a long, long way in 20 years. Fortran hasn't.

There are 2 ways of looking at the complexity of the proposed standard.
A pessimist would say that you are making the language too complex
and that it will be harder to implement and learn.
An optimist would say the the language will be much more powerful
than the current standard and will allow us to cleaner and more
transportable code.

My own feelings :
      1) It will make it a lot easier for people who have to put
	 together large programs from scraps written by people
	 who can barely program.
      2) The same people who took the time to learn Fortran 77
	 when it came out (and were ecstatic about thinks like
	 CHARACTER variables) will take up the new syntax as
	 fast as they can and drop Fortran 77 as fast as they
	 dropped Fortran 66.
      3) Those who prefer to keep puttering along with "simple"
	 languages like Fortran 66 (gosh, wasn't dealing with
	 character data in this very "simple" revision of the
	 language fun?) and deliberatly refused to bother to
	 learn Fortran 77 constructs will keep on writing
	 in whatever they first learned. We have several people
	 here like that- they are still annoyed when I use
	 CHARACTER variables and those horrid IF () ... ENDIF
	 clauses instead of nice neat GOTO's. Indentation of
	 code is also a radical and frightening idea to these
	 people.

      Before Fortran 77 came out, the compilers here had implemented
about 3/4 of the constructs already. Some of the stuff in the
88 standard has been implemented in vendor-specific constructs
already. Looking at just the Cray and CDC Fortran compilers and
all of their high-performance additions to the language would
seem to indicate that if we don't come up with a standard SOON
for some of these constructs we are going to end up with a LOT
of Fortran 77 code that can only run on one vendors machines.
We already have about 110,000 lines of such code - we had to use
the vendor specific syntax in order to get the programs to run
in a reasonable amount of time. Now we can't share these programs
with Cray users, since they use a different syntax. Kind of
makes one wish that certain companies had gotten together and
come up with a standard a few years back. I shudder to think
what it costs to port our programs to the VAXens and Crays used
by most of our collegues.

      I don't like everything in Fortran 88, but there is a lot more that
I want to use VERY badly. So I say, forget about the people who
are unwilling to add useful constructs to the language. In most
cases, no matter what the constructs are, they won't want to learn
them and would prefer to stay with whatever they learned in
the first place. Fine. They don't have to use 'em. Alas, the same
people who whined about having to open a book or ask someone
what an IF () ... ENDIF construct was when Fortran 77 came out
will be singing the same song when Fortran 88 comes out and
they encounter someone elses code who decided that they were
really neat. C'est la vie...


-- 
      Greg Kamer - Purdue Macromolecular Crystallography

      tsh@mace.cc.purdue.edu    (internet - read every day)
      xtsh@purccvm.bitnet	  (bitnet - read very rarely)

fpst@hubcap.UUCP (Steve Stevenson) (10/22/88)

From article <977@l.cc.purdue.edu>, by cik@l.cc.purdue.edu (Herman Rubin):
> The only penalties for increasing the size of the language are the size, and
> to a lesser extent the speed, of the compiler.

Believe that PL/I will show you quite differently.  The cost of very
large languages is in the generality of the underlying coding structures.
These are hidden from all but the compiler types.  You're being naive.

> All of the present languages deny the programmer the power of the machine.
> If execution time is at all important, this is criminal.  Machine structure
> is simpler than Fortran (any machine).

For von Neumann machines, this probably is not the case (Fortran).  It WILL
be the case when y'all start trying to force a von Neumann language
to do distributed processing.

-- 
Steve Stevenson                            fpst@hubcap.clemson.edu
(aka D. E. Stevenson),                     fpst@prism.clemson.csnet
Department of Computer Science,            comp.parallel
Clemson University, Clemson, SC 29634-1906 (803)656-5880.mabell

brainerd@unmvax.unm.edu (Walt Brainerd) (10/22/88)

The purpose of an ANSI technical committee such as X3J3 is to discuss
and resolve technical issues.  Some of you reading this column must be
sensing how frustrating it is to conduct a rational technical argument
with people like the folks from Convex, who say that

a)  the proposed Fortran 88 is no good because Ken Kennedy, a Ph. D.
    computer scientist, says it isn't.

b)  the proposed Fortran 88 is no good because some Ph. D. computer scientists
    had a hand in developing it.

Well, if you're not too logical, then maybe you should be politically astute;
one of the officers of X3J3 is the Editor, but it is not Walt Brainerd
(as P Smith, a member of X3J3, seems to think) and never has been!

Some other basic facts of recent postings need to be corrected:

1.  My first language (other than an assembler) was Fortran,
    first learned in 1960, before Pascal and C were invented, I believe.
    That does not mean that the good ideas from these more recent languages
    should not be borrowed.

2.  The document discussed by ISO/WG5 was the work of X3J3 over the last
    ten years.  The "five" mentioned only served as a group to modify
    the draft standard to simplify it as requested by many commenters.
    For example, ALIAS, IDENTIFY, RANGE, internal procedures, and
    host association were removed.

Some differences of opinion:

1.  I think "computer scientists" with vast experience with Fortran and
    scientific computing, even if they ARE educated, are at least as
    qualified to design Fortran as compiler writers.  Acutally, I was also
    hoping that my compilers would be written by people knowledgable in the
    field of computer science.  The issue of proper representation reminds
    me of the U.S. senator that, when accused of being quite mediocre, said
    that mediocre people need representation.  Users need all of the
    representation they can get and some of that representation
    should be through people who understand language design issues.
    Some of it, inevitably, will be mediocre.

2.  Hey, folks, we're approaching the 1990s.  Technology is getting more
    complicated, and so are compilers (along with the technology available
    to write them), but anyone who thinks Fortran 88 is as complicated as
    Ada has been ingesting brain-damaging substances.

I appreciate Bob Allison's sentiment to try to downplay polarization
of vendors and users.  Of course there are exceptions on both sides,
but I stick by my statement (with which P Smith of Convex agrees) that
the hard objections come from some vendors (and the hard push for it
is coming from some of those representing users).  It didn't used to be this way
when most members contributed toward making the proposed standard the best
they could, whatever their technical positions were.

The above ARE the opinion of my employer (which is NOT the University
of New Mexico, by the way), as well as myself.

Walt Brainerd 505/275-0800
Unicomp, Inc.  Albuquerque, NM

link@stew.ssl.berkeley.edu (Richard Link) (10/22/88)

In article <894@mace.cc.purdue.edu> tsh@mace.cc.purdue.edu (Greg Kamer) writes:
>This strikes a VERY familiar chord! The group I work for consists of
>about 30 researchers who want to solve THEIR problem, don't want to
>take the time to generalize the code and document it properly, and
>yet feel perfectly justified about complaining when something I end
>up having to install for general use doesn't solve the next problem 
>that is encountered.

I have now seen several comments to the effect that scientists can't
program, or are at least sloppy & don't follow modern programming
constructs and software engineering practices.

This is an over-generalization. I can show you
code written by scientists that would teach programmers a thing or
two. On the other hand, I've seen very elegant FORTRAN code written
by a programmer, which very greatly influenced my own programming
style, but which nevertheless was quite wrong.
(The software was for quality control of commercial aircraft
navigation systems. The company did not know that the statistics
calculations were wrong until I had to modify the code. Here's
a perfect example of Kernighan & Plauger's "make it right before
you make it faster". This error could have had potentially
disasterous consequuences).

I think we can each come up with examples and counter-examples of
who can program better, but that adds nothing to the FORTRAN
standards debate.

However, I do resent this kind of condescending attitude towards
scientists who program. Remember, physicists invented the computer
and programming languages. I think we deserve our 2 cents' worth.

Dr. Richard Link
Space Sciences Laboratory
University of California, Berkeley
link@ssl.berkeley.edu

fouts@lemming. (Marty Fouts) (10/22/88)

In article <15821@agate.BERKELEY.EDU> link@stew.ssl.berkeley.edu (Richard Link) writes:

>   However, I do resent this kind of condescending attitude towards
>   scientists who program. Remember, physicists invented the computer
>   and programming languages. I think we deserve our 2 cents' worth.

I have tracked down this condescending attitude in a lot of
programmers who have worked for / with me over the years, and it is
often a response to a certain kind of arrogant physicist who makes
outrageous claims like "remeber physicists invented the computer and
programming languages." (;-)

Although I assume Dr. Link is not one of these arrogant physicist, I
have frequently had to deal with such.  And with condescending
programmers.  Neither side does the other either good; nor themselves
in the relationship.

For the history books, the invention of the computer (Meaning of
course, the modern stored program digital electronic computer) is lost
in antiquity.  Interesting claims have been made for Macauly/Echert (sp?),
Von Neumann, and Turing, among others.  Not all of the claimed
individuals were pysicists.

Depending on how you defining the invention of programming languages,
you can either give credit to those who did the fundemental work in
computational semantics, such as Church, Turing, Chomsky et. al; or
you can give credit the independent inventors of the first handful of
recognized languages.  The latter batch of people are truely a mixed
bag, and include physicists, mathematicians, the occasional Navy
captain, and even (shudder) computer scientists, although few thought
of themselves as such at the time.  Even the group of people who
invented Fortran weren't all physicists.

Unfortunately, there is a lot of myopia in the physics/engineering
community, which is increased by the condescending attitude taken by
some computer scientists.  (BTW, I'm neither.)  I would like the
physicists to notice that physics isn't the only numerical
programming, and that not even all physics problems get solved the
same way.  I would like programming language bigots to notice that
physicists have real problems to solve, and I would like to see them
talk to each other, not at each other.

But, its Friday night and I/ve been waiting for the Y/MP to come back
up for an hour so I may as well spend my time believing in miracles as
anything else.

Marty
--
+-+-+-+     I don't know who I am, why should you?     +-+-+-+
   |        fouts@lemming.nas.nasa.gov                    |
   |        ...!ames!orville!fouts                        |
   |        Never attribute to malice what can be         |
+-+-+-+     explained by incompetence.                 +-+-+-+

link@sag4.ssl.berkeley.edu (Richard Link) (10/22/88)

In article <2060@unmvax.unm.edu> brainerd@unmvax.unm.edu (Walt Brainerd)
writes:
>how frustrating it is to conduct a rational technical argument
>with people like the folks from Convex, who say that
>
>b)  the proposed Fortran 88 is no good because some Ph. D. computer scientists
>    had a hand in developing it.

As far as my own postings are concerned, I did not mean to impune the
legitimate and important contributions of Ph.D. computer scientists
to language theory. What I object to is turning FORTRAN from a number
cruncher (FORmula TRANslator), it's original scope, into an all-purpose
language with lots of bells and whistles, simply because some Ph.D.
computer scientists *evidently* feel that this should be so. The new
standard does not serve my needs.

I feel that I should speak up, since numerical analysis and modeling
in FORTRAN is what I do for a living. I *do* want an improved FORTRAN,
but I want the "improvements" to be truly useful, without overloading
the language with constructs *deemed*, but not proven, useful by the
aforementioned Ph.D. computer scientists.

As far as I can tell, the needs of the end-users (such as myself) were
not given much consideration in drafting the proposed standard.
(This is a subjective opinion only, please spare me the flames).

>Some other basic facts of recent postings need to be corrected:
>
>1.  My first language (other than an assembler) was Fortran,
>    first learned in 1960, before Pascal and C were invented, I believe.

If you can't remember, no wonder FORTRAN is in trouble! :-)

>    That does not mean that the good ideas from these more recent languages
>    should not be borrowed.

I agree with this, but only so far as it improves FORTRAN without changing
its scope. I don't want a lot of garbage simply because Pascal or C has it!
If you want another Ada, it's already been invented.


Richard Link, Ph.D.
Space Sciences Laboratory
University of California, Berkeley
link@ssl.berkeley.edu

psmith@mozart.uucp (Presley Smith) (10/22/88)

In article <2060@unmvax.unm.edu> brainerd@unmvax.unm.edu (Walt Brainerd) writes:
>
>The purpose of an ANSI technical committee such as X3J3 is to discuss
>and resolve technical issues.  Some of you reading this column must be
>sensing how frustrating it is to conduct a rational technical argument
>with people like the folks from Convex, who say that
>
>a)  the proposed Fortran 88 is no good because Ken Kennedy, a Ph. D.
>    computer scientist, says it isn't.
>
>b)  the proposed Fortran 88 is no good because some Ph. D. computer scientists
>    had a hand in developing it.
>
>Well, if you're not too logical, then maybe you should be politically astute;
>one of the officers of X3J3 is the Editor, but it is not Walt Brainerd
>(as P Smith, a member of X3J3, seems to think) and never has been!

Walt, I hate to contradict you, but I know full well who the editor is.  
I also don't control the people at CONVEX that want to express their OWN 
opinions which may NOT be my opinions and NOT the opinions of the company. 
In fact, Bob put a disclaimer on his article that the opinions were his
own, and they certainly do not necessarily represent my views.

I believe if you look at the series of information that is on the net,
that I have NEVER said anything about Ken Kennedy or about PHD computer
scientists.   I also am NOT asking others to write messages.  I'm prepared
to take full responsibility for my message and for how politically astute
I may be, but not for the personal responses of others.  They have a right
to their own opinions, just as you have a right to yours.   I will continue
to request that eveyone express their opinions whether they agree with 
mine or not.

>
>Some other basic facts of recent postings need to be corrected:
>
>1.  My first language (other than an assembler) was Fortran,
>    first learned in 1960, before Pascal and C were invented, I believe.
>    That does not mean that the good ideas from these more recent languages
>    should not be borrowed.
>
>2.  The document discussed by ISO/WG5 was the work of X3J3 over the last
>    ten years.  The "five" mentioned only served as a group to modify
>    the draft standard to simplify it as requested by many commenters.
>    For example, ALIAS, IDENTIFY, RANGE, internal procedures, and
>    host association were removed.
>

Okay, let's put some more facts on the table.  The "document discussed" at
the ISO/WG5 meeting was a document "based" on the work of X3J3 over the 
last ten years.   That final document was actually produced by YOU in a hotel
room in Jackson during the last X3J3 meeting.  That document as modified
was NOT voted on in the Jackson meeting and was NOT approved by X3J3
to be submitted to ISO or WG5.   The SD-2 is very clear that documents
to be submitted to the international groups are to be passed through 
the X3 Secretariat prior to being forwarded to the international group.
From the votes at the X3J3 meeting in Jackson, it is clear that this 
document does not have the 2/3 approval of the X3J3 committee required
to make this document the base for a revision to the proposed 8x standard.

WG5 in resolution 2 requested that DP1539 be modified with the changes 
specified in that resolution.   DP1539 is S8.104 which was the draft 
proposed standard that was sent out for public review.  

Since that time, you, Walt, have produced S8.108, S8.109, and are in 
the process of producing S8.110 which supposedly will be S8.104 plus
what WG5 requested.   My problem is with the process and not just 
with the document.  

  1.  The full X3J3 committee has NOT been approving the changes going
      into S8.110 prior to their being added or changed.  There are 
      changes that have been made by a small group of people that 
      have not been approved by the whole committee that are going 
      into this document.   WG5 saw changes that had NOT been approved
      by X3J3.

  2.  The members of X3J3 has no way of actually telling what changes
      have been other than to read this 400 page document and attempt by
      hand to compare it's current contents to the S8.104.   I am 
      not alone in my skepticism on this point.

  3.  The debate in the committee in the last two meetings has been on
      what document to start with as a base document for the changes 
      required by the public review comments.   Most members have been
      looking at functionality that is going to be removed or added 
      and not at the details of "is the proposed document technically
      correct?"   X3J3 is still trying to decide what functionality
      will be in or out of the proposed standard.  

      And we are being asked by WG5 to approve and transmit a new 
      proposal in a two month time period that has not been properly
      reviewed for technical accuracy...and that proposal will 
      probably become the new ISO standard.   I'm sorry, Walt, but 
      I don't buy it.  

      That's why X3 has now directed X3J3 to follow the rules.

  3.  Using a document as a base that is NOT DP1539 is NOT following 
      the instructions of WG5 in resolution P2.   I'd like to see
      the change record for document S8.110 that shows that it 
      started with DP1539 and changed the following lines to whatever
      and produced S8.110.   Can you produce such a document?  If
      WG5 asks for such a record, can you show compliance?

>Some differences of opinion:
>
>1.  I think "computer scientists" with vast experience with Fortran and
>    scientific computing, even if they ARE educated, are at least as
>    qualified to design Fortran as compiler writers.  Acutally, I was also
>    hoping that my compilers would be written by people knowledgable in the
>    field of computer science.  The issue of proper representation reminds
>    me of the U.S. senator that, when accused of being quite mediocre, said
>    that mediocre people need representation.  Users need all of the
>    representation they can get and some of that representation
>    should be through people who understand language design issues.
>    Some of it, inevitably, will be mediocre.
>
>2.  Hey, folks, we're approaching the 1990s.  Technology is getting more
>    complicated, and so are compilers (along with the technology available
>    to write them), but anyone who thinks Fortran 88 is as complicated as
>    Ada has been ingesting brain-damaging substances.

It's interesting that there is a chart in the IBM ballot response that
compares FORTRAN 8x to Ada... pull it out and take a look.  

>I appreciate Bob Allison's sentiment to try to downplay polarization
>of vendors and users.  Of course there are exceptions on both sides,
>but I stick by my statement (with which P Smith of Convex agrees) that
>the hard objections come from some vendors (and the hard push for it
>is coming from some of those representing users).  It didn't used to be this way
>when most members contributed toward making the proposed standard the best
>they could, whatever their technical positions were.
>

P Smith certainly agrees that  "NO" votes on the X3J3 committee for 
the FORTRAN 8x standard have been from vendors.  But a users such as
Los Alamos, Boeing, and others voted "NO" also. 

Since we've opened this again, I will make two other comments:

 1. I believe the public review comments reflected both the amount of 
 information and the tone of the information presented to the user 
 community either in Europe or the U.S.   In the U.S. much of that 
 information was toward the "NO" side and in Europe most of it was 
 toward the "YES" side.   I beleive this is clear.   The facts also
 are that 60% of the public comments was negative and that was not
 all from the U.S.   There were many positive comments on both sides
 of the oceans.  

 2. I still do not believe the statement that Europe knows the 
 views of the user community any better than any the other group.

 Vendors have a way of providing information to their users and collecting
 information from their users.   Part of the debate has been that of
 vendors vs users.   Large user groups that work with the various vendors
 are also members of X3J3 and provide input directly to their vendors.
 Some of these groups are DECUS, Share, Guide, etc.   For example, I can 
 show you a resolution that the DECUS user group put together last year
 at one of their meetings that supported DEC's position on FORTRAN 8x.

 These user groups are independent organizations from the vendors 
 and are NOT required to support the vendor.  May times they pressure
 the vendor to make changes in products, etc.

 CONVEX just completed it's user group meeting in October.  We had a 
 session on the status of FORTRAN 8x.  In discussions with various  
 users,  their number one concern is performance and not new language 
 features.  May of them are interested in array notation and other parts of 
 the proposed FORTRAN 8x.  

 Some expressed dismay at the way things are going and at the international
 rif that appears to be forming.

 I believe that the vendors are in touch with the users and that they 
 listen to their user groups.   We certainly listen to our user group and 
 attempt to make changes in our products based on what they say.  We also
 attempt to represent the view of that group to X3J3 in the way we vote.

 

bill@hcx2.SSD.HARRIS.COM (10/22/88)

/* Written 12:02 pm  Oct 20, 1988 by hirchert@uxe.cso.uiuc.edu in hcx2:comp.lang.fortran */
Kurt Hirchert (hirchert@uxe.cso.uiuc.edu) writes:
> and, as you note later, most U.S. commenters got their information from
> presentations made by vendors opposed to the draft.  Because of ISO
> rules, the European presentations were allowed to give attendees copies
> of the draft.  Because of X3/CBEMA rules, attendees of U.S. presentations
> had to order theirs from Global Engineering.  Many either chose not to
> because of cost or received their copies from Global Engineering so late
> that they did not have time to adequately review them, so they simply
> echoed what was presented to them.  (I, too, could list particular
> comment numbers.)  Do you really to argue that people that had copies of
> the draft are less representative than those who did not?

This whole issue of "vendors" versus "users" really angers me.  I took the
time to go through the public comment and note opposing comments that came
from organizations I knew to be heavy FORTRAN users.  I selected only those
letters that, based on the detailed comments, indicated a reasonable depth
of review of the draft.  Here is just a partial list (those marked with
an asterisk proclaimed themselves to be "official positions" of that
organization):

Organization                                  Number of comments from
----------------------------------------      -----------------------
ARCO Oil and Gas Co.                                   1
ATT Technology Systems                                 1
Amoco Corporation                                      1 *
Boeing (various divisions)                            17
Center for Lithospheric Studies                        1
Chevron Oil Field Research Co.                         1
Exxon Central Services                                 1 *
Federal Communications Commission                      1
General Electric (various divisions)                   3
Jet Propulsion Laboratory                              2
Lawrence Livermore National Labs                       2
Los Alamos National Labs                              11
NASA - Goddard Space Flight Center                     2
National Center for Supercomputing Applications        1
        (Mr. Hirchert's employer)
U.S. Army (various installations)                      3

In all, I counted 73 letters like this.  Don't tell me it is just "vendors"
and "uninformed users" that are opposed to the draft standard; it just
ain't so!

Also, I have been doing a survey of Harris FORTRAN users to find out
more about their views on the draft standard as well as FORTRAN in
general.  So far, a very small minority have answered "yes" to the
question "Are you familiar with the 8x draft?".  One question I keep
asking myself is this: If users are really hungering for major new
features/changes in FORTRAN/77, why are they not informing themselves
about X3J3 activities?  I think it is because the premise is false;
they are NOT hungering for major changes.  Improvement, yes, but not
on the order of the 8x draft.

> and I'll bet that the U.S. presentations didn't talk about how
> unrepresentative it is to consider the implementation time for many of
> those FORTRAN 77 implementations.  (Many vendors took FORTRAN 77 as an
> opportunity to write new compilers based on new compiler technology
> (e.g., writing in HLL's rather than assembler, using common back-ends for
> code generation, using automatically generated parsers, etc.  On the
> other hand, vendors seem inclined to implement Fortran 8x as extensions
> to their existing products.  Indeed, many have already implemented large
> parts of 8x in precisely this manner.)

I think you just argued against yourself, Kurt.  Most of the vendors who
have implemented parts of 8x as extensions did so because they had already
rewritten their FORTRAN compiler once; they didn't want to do it again.
Moreover, those compilers were now "up-to-date" on technology, so the
impetus for rewrite that existed with old FORTRAN/66 compilers no longer
existed for them.

However, that does not prove that all FORTRAN/8x features can be done
as "add-ons" to a FORTRAN/77 compiler.  FORTRAN/8x changes many
of the assumptions that a compiler could make about a FORTRAN/77
program -- assumptions that most likely are embedded in the design
of almost all FORTRAN/77 compilers.  You want specifics?  Okay.
In FORTRAN/77, there is no need to have dynamic-sized temporaries;
in 8x it is a must for array operations.  In 77, you can throw away
everything about a program unit once it is compiled; in 8x this is
isn't true, because of MODULES.  In 77, each procedure is self-contained;
there is no information "inherited" from outside it.  In 8x, MODULE
and internal procedures inherit information about variables and types
from outside the program unit.

This isn't the whole story, either.  The argument I find most compelling is
this: Just about every compiler implementor I have asked agrees with my
estimate of 8x compiler complexity at about half that of Ada.  Now, we have
a darn good Ada compiler.  We bought the front-end, and we have a common
back end known as CCG.  Yet, for the three years since we started the Ada
project, it has consumed at least 4 people full time, all year every year,
just to maintain this product; there were even more involved in its
development.  We have NEVER had that many people working on our
FORTRAN/77 compiler, even when it was being developed (with the same
technology).

>>It's real simple.  If you don't get the vendors to sign up to
>>producing compilers and supporting those compilers, NO new standard
>>will be successful.   It's ALGOL 68 again.  A beautiful language 
>>that none of the major vendors implemented.   That could have a 
>>lot to do with why we are still programming in FORTRAN and not 
>>ALGOL 68.  
> 
> Then again, the fact that no existing programs would run in the new language
> may have had something to do with why there wasn't enough demand to get the
> major vendors to do good implementations of Algol 68.  (Several of the major
> vendors did implementations, but typically they weren't very impressive.)
> Fortran 8x is designed to support the existing base of programs as well as
> offer new features to the Fortran community.

Wait a minute.  C was a new language (after FORTRAN); it has been
successful.  Pascal was a new language, and it has been moderately
successful considering it was designed as a teaching tool.  BASIC was
a new language, and it has been successful.  This argument is a
non-starter.

> Finally, let me make a couple of comments not directly in response to
> Presley's.  In the U.S., the trade press has tended to cover Fortran
> standardization only when X3J3 produced a draft or report or when X3J3
> had major internal disagreements.  In Europe, on the other hand, there
> has been a great deal of continuing coverage.  Also, most of the ISO
> delegates have been involved in Fortran standardization for many years,
> while a large part of the X3J3 membership (especially among those opposed
> to the Fortran 8x draft) who joined within the last couple of years.  Is
> it possible then that the greater acceptance of the Fortran 8x draft
> outside the U.S. (and by WG5, in particular) might be a result of
> long-term familiarity with its contents, reducing the "fear of the
> unknown" factor and providing a greater opportunity to assess and
> appreciate the benefits as well as the costs of the new features.

There are at least two other likely causes for greater European acceptance.
One: they have spent so much time with 8x that it is now more familiar
to them than FORTRAN/77.  Thus, they fear going back to something they
now don't know very well.  Two: They have an enormous emotional investment
in 8x; it is psychologically very difficult for them to give up on it.

The Europeans have typically been more enamored of "neat features" in
languages than in their ultimate utility.  Witness "pass by name" in Algol
60.  In fact, that is the real reason Algol 68 died: it had "neat" features
but not a well-designed set of _useful_ features (witness the absence of
I/O).

Bill Leonard, X3J3 Member
Harris Computer Systems Division
2101 W. Cypress Creek Road
Fort Lauderdale, FL  33309
bill@ssd.harris.com or bill%ssd.harris.com@eddie.mit.edu

riley@batcomputer.tn.cornell.edu (Daniel S. Riley) (10/23/88)

In article <15821@agate.BERKELEY.EDU> link@stew.ssl.berkeley.edu (Richard Link) writes:
>In article <894@mace.cc.purdue.edu> tsh@mace.cc.purdue.edu (Greg Kamer) writes:
>>This strikes a VERY familiar chord! The group I work for consists of
>>about 30 researchers who want to solve THEIR problem, don't want to
>>take the time to generalize the code and document it properly, and
>>yet feel perfectly justified about complaining when something I end
>>up having to install for general use doesn't solve the next problem 
>>that is encountered.
>
>I have now seen several comments to the effect that scientists can't
>program, or are at least sloppy & don't follow modern programming
>constructs and software engineering practices.
[lengthy indignant rebuttal deleted]

The point is that writing good code is not part of the job description
for most scientists.  Usually, we're more interested in writing something
that does the job at hand, not writing some wonderfully generalized all
purpose solutions.  Turning this sort of code into general purpose,
re-usable modules can be very difficult, and the limitations of the fortran
language make it a lot harder.  Scientists can write very good code, but
most of them, most of the time, don't.  It's just not our primary concern.
As a practicing physicist at a high-energy research lab, I've re-written
a lot of very bad code, and I've wished many times over for a lot of the
features in the F8X proposals.  The situation is better since we've
implemented source control in the lab, and started using SASD and similar
techniques, but I still wish for a better Fortran.  (and before anyone
says it, switching to another language is not an option.)

-Dan Riley (dsr@lns61.tn.cornell.edu, dsr@crnlns.bitnet)
-Wilson Lab, Cornell U.

ssd@sugar.uu.net (Scott Denham) (10/23/88)

In article <15821@agate.BERKELEY.EDU>, link@stew.ssl.berkeley.edu (Richard Link) writes:
> I have now seen several comments to the effect that scientists can't
> program, or are at least sloppy & don't follow modern programming
> constructs and software engineering practices.
> 
I certainly didn't say "can't", and certainly didn't mean to imply "all"
To be more exact, many of our "scientists" in fact do NOT produce what 
one might consider "production quality" code. Not that they couldn't...
many of these folks are excellent programmers; the point is that's not
what they are paid to do.  Sometimes a good clean design comes naturally;
other times it may not, particularly if your research leads you down a
somewhat different path than you had expected to take when you started.
Their job is to develop and prove the concepts; ours is to take the 
resulting prototype code and make it part of a robust, generalized 
production system. To do this cost-effectively we MUST all be working
in the same language!  I'd LIKE it to be FORTRAN. 
> 
> I think we can each come up with examples and counter-examples of
> who can program better, but that adds nothing to the FORTRAN
> standards debate.
I do too!  I can show you examples of stuff turned out by so-called 
"professional programmers" that would curl your hair! (It does mine
every time I have to maintain it or answer a "how does it work" question_)
> 
> However, I do resent this kind of condescending attitude towards
> scientists who program. Remember, physicists invented the computer
> and programming languages. I think we deserve our 2 cents' worth.
> 
I hope nothing in my comments triggerd this outburst :) . As I've said
above I've got no problem with scientists who program.  And I'm sure
there are few of us who don't have an ugly hack job or two, thrown 
together to get a task accomplished, that we might not exactly want held
up as a shining example of uour best work! 
> Dr. Richard Link


 Scott Denham 
  Western Atlas International

jejones@mcrware.UUCP (James Jones) (10/23/88)

In article <44400025@hcx2>, bill@hcx2.SSD.HARRIS.COM writes:
> In fact, that is the real reason Algol 68 died: it had "neat" features
> but not a well-designed set of _useful_ features (witness the absence of
> I/O).

I think Algol 60 is being confused with Algol 68 here.  Algol 68 most definitely
did have I/O, though there are those who thought it too convoluted.  I dare
say there are those who would disagree with the rest of the above characteri-
zation of Algol 68.

		James Jones

khb%chiba@Sun.COM (Keith Bierman - Sun Tactical Engineering) (10/24/88)

In article <15851@agate.BERKELEY.EDU> link@sag4.ssl.berkeley.edu (Richard Link) writes:
>
>As far as my own postings are concerned, I did not mean to impune the
>legitimate and important contributions of Ph.D. computer scientists
>to language theory. What I object to is turning FORTRAN from a number
>cruncher (FORmula TRANslator), it's original scope, into an all-purpose
>language with lots of bells and whistles, simply because some Ph.D.
>computer scientists *evidently* feel that this should be so. The new
>standard does not serve my needs.

Are you complaining that f88 leaves something out ? If your complaint
is that it contains features that YOU do not deem useful, it is not
logical to conclude that other users do not. These other users, in
fact, lobbied hard to get them in and to keep them in. 

MY background in in mathematics and Kalman filtering (I was involved
with co-authoring and porting the resulting code), and there are very
few features in f88 that I would not have found very useful. There
are, in fact, features MISSING. But I strongly support acceptance of
the current draft NOW. It represents a strong step forward.

It should not be forgotten that the last couple of years of committee
meetings involved attempt after attempt to remove features; the vast
majority of these attempts failed, because these "bells and whistles"
are considered vital by many. 

>
>I feel that I should speak up, since numerical analysis and modeling
>in FORTRAN is what I do for a living. I *do* want an improved FORTRAN,
>but I want the "improvements" to be truly useful, without overloading
>the language with constructs *deemed*, but not proven, useful by the
>aforementioned Ph.D. computer scientists.

Not all numerical analysts agree with you that the language is
overlaaded with uneeded features. If you would itemize the features
you think unecessary, supporters of the standard can produce ideas on
how they can be employed to good effect.
>
>As far as I can tell, the needs of the end-users (such as myself) were
>not given much consideration in drafting the proposed standard.
>(This is a subjective opinion only, please spare me the flames).
>
Would you please present your evidence ? Until fairly reccently I too
was an end-user (and an offical observer, so I got all the meeting
minutes). My needs WERE represented. 

>>    That does not mean that the good ideas from these more recent languages
>>    should not be borrowed.
>
>I agree with this, but only so far as it improves FORTRAN without changing
>its scope. I don't want a lot of garbage simply because Pascal or C has it!

I think everyone agrees with this. But those features which have
proved useful belong in FORTRAN. Please define FORTRAN's scope. I have
always thought that FORTRAN was THE language for scientific
programming (APL notwithstanding). Seems to me that there are a lot of
different scientists, with different needs. But it would not make too
much sense to have specialized languages for each (who wants to
translate IMSL and NAG into dozens of dialects ? Not me!)

>If you want another Ada, it's already been invented.

Meaning ? F88 is too much like Ada. If so, how ?
>
>

I propose that opponents of the standard give specifics. Propoents can
then respond in a reasoned way. Nothing is gained by pointing out that
certain vendors are out to gut the standard, calling members of the
committee ComputerScientists, or claims that physicsts make poor
programmers. 


Keith H. Bierman
It's Not My Fault ---- I Voted for Bill & Opus

psmith@mozart.uucp (Presley Smith) (10/24/88)

In article <50500081@uxe.cso.uiuc.edu> hirchert@uxe.cso.uiuc.edu writes:
>
>Presley Simith(psmith@mozart.uucp) writes:
>>I don't believe that the European's public comment represent the consumer
>>viewpoint any more than the U.S. public comments represents the consumer
>>viewpoint.   What are the facts...
>
>>1.  The Europeans were invited to a series of "FORTRAN Forums."  These 
>>Forums presented the positive side of the FORTRAN 8x standard and pumped
>>up the users to respond to "get the standard out...without delay."  There
>>are many of these comments in the European response.  In fact, I could 
>>list the particular comment numbers here, but I will not.
>
>and, as you note later, most U.S. commenters got their information from
>presentations made by vendors opposed to the draft.  Because of ISO rules,
>the European presentations were allowed to give attendees copies of the draft.
>Because of X3/CBEMA rules, attendees of U.S. presentations had to order theirs
>from Global Engineering.  Many either chose not to because of cost or received
>their copies from Global Engineering so late that they did not have time to
>adequately review them, so they simply echoed what was presented to them.  (I,
>too, could list particular comment numbers.)  Do you really to argue that
>people that had copies of the draft are less representative than those who did
>not?

Kurt, I certainly agree with you on the Global Engineering issue.  We should
be able to freely distribute copies of the proposed standard.  This has
certainly been a problem.

There are a couple of issues with the standard process in general:

1.  The draft of Fortran 8x is large.  Not every user is willing to 
spend the time to read and digest what is there.   It takes a long time to
read and even longer to really understand what each new feature really
means and how they all hang together.   Help was available in the form
of a book by Metcalf and Reid called "Fortran 8x Explained."  That provided
a more compact way to "review" the proposed standard.

2.  Let me remind you that there is NO requirement for a person to have
read or understand the proposed standard in order to comment on it. 
And, the ANSI rules do not separate comments from people who have spent
hours studying the proposed standard from those who have heard a presentation
and either like or don't like some part of the standard and want to 
express their opinion on the subject.  A comment is a comment. 

3.  Most Fortran users are not compiler writers, and they are not aware of 
the issues of producing efficient compilers.   Some input from the compiler 
writing community is helpful in understanding those issues.  It appears that
some do not believe what the compiler writers are saying.  Everyone can    
make their own determination on what to believe and what not to believe.
Much of this input is coming from people who have implemented multiple
compilers in their lives and in some cases, compilers for multiple different
languages including both Fortran and Ada. 

( I have removed a portion of Kurt's response which was addressed by 
Bill Leonard of Harris...)  

>
>>2.  In the U.S. various groups received a more balanced set of 
>>information.  Presentations presented the new features, benefits
>>of each, and the drawbacks of each.   Discussions did not center
>>around the "beauty" of the "modern FORTRAN" language, but around
>>how it would help the user and how it would hurt the user.   In
>>the U.S. we also discussed how it would be more complex for an
>>engineer to pick up this 8x language quickly (one would need a 
>>better computer science background...) and issues of sustaining
>>programs that were created with a mixture of FORTRAN 77 and 
>>FORTRAN 8x constructs...
>
>My impression of many of the U.S. presentations is that they presented minor
>"straw man" benefits of many of the new features (ignoring benefits I would
>consider far more important), and then attacked them with "facts" that I find
>highly questionable.  In my experience, the measure of a balanced presentation
>is that both sides think it was biased towards the other side.  I don't see
>that the U.S. presentations met this criterion any better than the European
>presentations.  (I.e., presentations on both sides of the Atlantic tended to
>reflect the biases of the presenters.)
>
>>In Europe, many of the presenters of the Forums were users that 
>>were in favor of making FORTRAN a "modern language" that would
>>"compete" with other languages like Ada and Pascal. 
>
>>In the U.S. most presentations were made by the Vendors.  The 
>>ones that must support the FORTRAN user base and provide quality
>>products for their use.   It seems strange that the major 
>>vendors: IBM, DEC, and UNISYS all said "NO" to FORTRAN 8x.
>>Has anyone really looked at the why?  
>
>I sure have.  I happen not to agree with many of their technical arguments
>and assertions.  (Unfortunately, for two of the above three, I find political
>or tactical motives to be a better predictor of their positions than technical
>considerations.  I still listen to their technical arguments carefully, but I
>take them with a grain of salt, especially when they involve unsupported
>assertions.)

Since we've opened this again, I will make two other comments:

 1. I believe the public review comments reflected both the amount of 
 information and the tone of the information presented to the user 
 community either in Europe or the U.S.   In the U.S. much of that 
 information was toward the "NO" side and in Europe most of it was 
 toward the "YES" side.   I beleive this is clear.   The facts also
 are that 60% of the public comments are negative.  The negative comments
 were not all from the U.S.   There were also many positive comments on
 both sides of the oceans.  

 2. I still do not believe the statement that Europe knows the 
 views of the user community any better than any the other group.

 Vendors have a way of providing information to their users and collecting
 information from their users.   Part of the debate has been that of
 vendors vs users.   Large user groups that work with the various vendors
 are also members of X3J3 and provide input directly to their vendors.
 Some of these groups are DECUS, Share, Guide, etc.   For example, I can 
 show you a resolution that the DECUS user group put together last year
 at one of their meetings that supported DEC's position on FORTRAN 8x.

 These user groups are independent organizations from the vendors 
 and are NOT required to support the vendor.  May times they pressure
 the vendor to make changes in products, etc.

 CONVEX just completed it's user group meeting in October.  We had a 
 session on the status of FORTRAN 8x.  In discussions with various  
 users,  their number one concern is performance and not new language 
 features.  May of them are interested in array notation and other parts of 
 the proposed FORTRAN 8x.  

 Some expressed dismay at the way things are going and at the international
 rif that appears to be forming.

 I believe that the vendors are in touch with the users and that they 
 listen to their user groups.   We certainly listen to our user group and 
 attempt to make changes in our products based on what they say.  We also
 attempt to represent the view of that group to X3J3 in the way we vote.

Again, no one can force their opinion on anyone.  If you wish not to "agree
with many of their technical agruments and assertions", that is certainly 
your right.   It is certainly true that the standards process is also a
political process.  Witness the result of the WG5 meeting.  

(Again, some deletion of text...)

>There is substantial disagreement about what the user base wants and
>needs; it depends a lot on how you ask the question and how you
>interpret the answer.  Is it better to wait 5 years for a compiler with all
>the features you want or to get some of them in 3 years and then wait another
>10 years for the rest (if your're lucky)?  If you are certain you don't really
>need the features in the second batch, 3 years is clearly better than 5.  If
>you are certain you need features in the second batch, 5 years is clearly a lot
>better than 13.  If you're uncertain, you'll have to judge for yourself.

I am not in favor of delaying the standard.  But, it must be done by 
"due process" as defined in the SD-2.  That is the current issue on the 
table.  X3J3 could complete due process and have the new standard back
for public review within a few months...if X3J3 would work togehter to 
make that happen.

(More text deleted.)

>>The other problem with this statement is that "five people on X3J3"
>>put together this ISO/WG5 document from documents that had NOT been 
>>accepted by X3J3 at the last X3J3 meeting as being acceptable for a base
>>document for the new FORTRAN standard.   In fact, the delegation from X3J3
>>to the WG5 meeting was directed by X3J3 NOT to support this document
>>as a base for the new FORTRAN standard.    
>
>That's not the way I remember it.  First of all, there was no "X3J3 delegation".

I did not say the X3J3 delegation.  My statment is in the previous paragraph.
My statement was "the delegation from X3J3".

>X3J3 instructed the U.S. delegation, all of whose members were also members of
>X3J3.  X3J3 had no authority to instruct those X3J3 members who were part of
>non-U.S. delegations.  Second, the instruction was not to present the ABMSW
>plan and to avoid a situation in which WG5 took the job of producing the 
>international standard away from X3J3.  As I read the meeting reports, these
>instructions were followed.  The ABMSW plan was presented by a member of one of
>the other delegations, and WG5 left the job of producing the international
>standard in X3J3's hands but gave X3J3 more explicit instructions about what
>it wants the international standard to contain.  The ball is now in X3J3's
>court to decide whether there can be one standard for both ISO and ANSI.
>

Ture.  There are other issues in all this.  Certainly the ball is back 
in X3J3's court.  And they will have to decide if there will be one or
two standards.

>>                                           And now "five people on
>>X3J3" are putting this document, that was rejected at the last X3J3
>>meeting, into final form.  I don't believe this "five people on X3J3" 
>>have been operating on the instructions of X3J3 to produce this document.
>>From the votes at the last X3J3 meeting and the direction from X3, it 
>>is unclear that X3J3 or X3 would authorize this work.
>
>Come on now.  X3J3 members are free, as individuals, to work on whatever they
>choose.  It didn't X3J3 or X3 authorization for you and I to produce these
>Usenet articles.  Given the position of WG5, it is not unreasonable for these
>people to do work to show X3J3 what an implememtation of the WG5 instructions
>might look like.  What, if anything, X3J3 does with this work is another issue
>entirely.  That is where X3J3 votes, X3 authorizations, etc. come into play.
 
It's true that X3J3 and X3 did not authorize you and I to discuss this on 
the net.

These individuals can do any work on the documents that they want but the 
effect of the X3 direction to X3J3 is that X3J3 is to process that
document according to the SD-2.  That means this document must be processed
with the proper approvals prior to giving it back to WG5.   That document
does NOT belong to the 5 individuals that are doing the work on it and 
they cannot just give it to WG5 or anyone else as they see fit.

>>One other thing to note.  ANY document given to any ISO/SC/WG organization
>>must be passed throughper the procedures sified in the SD-2.  up, p
>>If this document is not processed properly, major internation
>>problems may result. 
>
>Maybe, and then again, maybe not.  The Hague agreement is no longer in effect,
>so ISO standards no longer have to be developed by national standards bodies.
>Working documents of committees following ANSI procedures are required to be
>in the public domain (except for the standard itself).  If X3J3 were to produce
>a working document reflecting WG5's instructions, X3J3 might not be able to
>"give" it to WG5, but there would be nothing wrong with WG5 "taking" it as the
>basis for an ISO standard.  (Having said this, let me also say that I would
>prefer that this not be the way things happen.)

I certainly would not be the one to provide the updated document to WG5
without obtaining the proper approvals first.  You'll have a real hard time
convincing the ANSI BSR that this document, that is made up mostly of the 
draft standard that went out earlier for public review, is just another
"working paper." 
 
>Finally, let me make a couple of comments not directly in response to Presley's.
>In the U.S., the trade press has tended to cover Fortran standardization only
>when X3J3 produced a draft or report or when X3J3 had major internal
>disagreements.  In Europe, on the other hand, there has been a great deal of
>continuing coverage.  Also, most of the ISO delegates have been involved in
>Fortran standardization for many years, while a large part of the X3J3
>membership (especially among those opposed to the Fortran 8x draft) who joined
>within the last couple of years.  Is it possible then that the greater
>acceptance of the Fortran 8x draft outside the U.S. (and by WG5, in particular)
>might be a result of long-term familiarity with its contents, reducing the
>"fear of the unknown" factor and providing a greater opportunity to assess and
>appreciate the benefits as well as the costs of the new features.
>
>Regardless of its cause, I think we have to deal with WG5's position as it is.
>Trying to ignore it by characterizing it as unimportant or unrepresentative is
>just as much a cop out as ignoring the negative comments from the U.S.
>

Interrupt
need to deal with it directly.  But, it cannot take precedence over
getting on with producing a standard.  That's what the X3 direction said...
Get on with producing a standard by the rules in the SD-2 and provide WG5
with a response on when and how... and work with them to get to where we
need to be...One standard for the world.   I believe we all support that
position.

lamson@sierra.uucp (scott h lamson) (10/24/88)

> psmith@mozart.uucp (Presley Smith) writes
> Vendors have a way of providing information to their users and collecting
> information from their users.
> I believe that the vendors are in touch with the users and that they 
> listen to their user groups.
>  We also
> attempt to represent the view of that group to X3J3 in the way we vote.

Help me here.  I work at General Electric Corporate Research and
Development.  Probably not one of your smaller companies.  We have 300
Sun's, 3 dozen or so VAX's, an IBM 3081K, and a Convex 210 (220
soon...).   No vendor has come here to talk about Fortran  8x ever
that I have been told about.  In order to have an informed opinion,
I subscribe to the ACM Fortran Forum,
ordered the draft of F8x, 6 copies of Fortran 8X Explained, and have
asked about F8x at most vendor presentations.  But the vendors have
not made an effort to publicize the proposed standard here one way or
the other.  As for the user groups (DECUS, SHARE, CUG, or others), at
least at our site, the people who might go to them are the systems
managers, not people who (work for a living.. :) ) use fortran in
their work.  I will respecfully listen to compiler writers from
vendors tell me how difficult the proposed F8x is to implement, that
is their area of expertise, I do physics.  But I reject the claim that
any vendor has the right to say their opinions represent the views of
their customers.  Certainly that is not the case here, as no vendor
has asked anyone I know about F8x.


On the difficulty of implementing the proposed F8x, I feel that I must
take the word of the experts that it will be difficult.  I just think
that it will be worth the cost.  For each person-year that goes into
writing a compiler, how many person-years go into people developing
applications using that compiler?  Could it be less than an order of
magnitude?  As for the speed of the compiler, my own opinion is this
is a non-issue.  The last time I worried about that was on a RAYTHEON
703, and even then the paper tape reader was slower.  I spend a lot
more time reading code than compiling it.  That makes many of the
features in modules and module procedures so very important;  to get
understandable readable code for complex applications.  You can only
worry about efficiency after you have the right answer.
        Scott|  ARPA:      lamson@ge-crd.arpa
       Lamson|  UUCP:      uunet!steinmetz!sierra!lamson
(518)387-5795|  UUCP:      uunet!steinmetz!lamson!crd

tsh@mace.cc.purdue.edu (Greg Kamer) (10/24/88)

> In article <894@mace.cc.purdue.edu> tsh@mace.cc.purdue.edu (Greg Kamer) writes:
> >This strikes a VERY familiar chord! The group I work for consists of
> >about 30 researchers who want to solve THEIR problem, don't want to
> >take the time to generalize the code and document it properly, and
> >yet feel perfectly justified about complaining when something I end
> >up having to install for general use doesn't solve the next problem 
> >that is encountered.

> I have now seen several comments to the effect that scientists can't
> program, or are at least sloppy & don't follow modern programming
> constructs and software engineering practices.

> This is an over-generalization. I can show you
> code written by scientists that would teach programmers a thing or
> two. On the other hand, I've seen very elegant FORTRAN code written
> by a programmer, which very greatly influenced my own programming
> style, but which nevertheless was quite wrong.

> However, I do resent this kind of condescending attitude towards
> scientists who program. Remember, physicists invented the computer
> and programming languages. I think we deserve our 2 cents' worth.

Sorry, I should have mentioned my background.
I am a macromolecular crystallographer by profession (degree actually
in Biology, as it was the closest thing available at Purdue), NOT
a computer scientist. I write new code, integrate other users code,
and maintain and document the stuff. My comments are those of
a scientist who specializes in the computational aspects of his
field and who is frustrated by the quality of the code passed on
to him for integration into general programs. 
I took the time to learn how to program well
(Fortran, Pascal, C and a lot of assembly languages I am doing my
best to forget...) and it bugs the heck out of me when I have to
deal with code that is not only rubbish from a stylistic point of
view, but often, more insidiously, contains scientific errors
that are a real pain to find due to the poor coding.
-- 
      Greg Kamer - Purdue Macromolecular Crystallography

      tsh@mace.cc.purdue.edu    (internet - read every day)
      xtsh@purccvm.bitnet	  (bitnet - read very rarely)

khb%chiba@Sun.COM (Keith Bierman - Sun Tactical Engineering) (10/25/88)

In article <5826@vdsvax.steinmetz.ge.com> lamson@sierra.uucp (scott h lamson) writes:
>
>
>Help me here.  I work at General Electric Corporate Research and
>Development.  Probably not one of your smaller companies.  We have 300
>Sun's, 3 dozen or so VAX's, an IBM 3081K, and a Convex 210 (220
>soon...).   No vendor has come here to talk about Fortran  8x ever
>that I have been told about.  In order to have an informed opinion,
>I subscribe to the ACM Fortran Forum,

Until just over a year ago I too was a user. I even became an X3J3
observer to keep informed.

>ordered the draft of F8x, 6 copies of Fortran 8X Explained, and have
>asked about F8x at most vendor presentations.  But the vendors have
>not made an effort to publicize the proposed standard here one way or
>the other.  

Bully for you.

As for the user groups (DECUS, SHARE, CUG, or others), at
>least at our site, the people who might go to them are the systems
>managers, not people who (work for a living.. :) ) use fortran in
>their work.  

This is standard just about everywhere. Furthermore the presentations
I got reports about were very biased against the standard. The usual
presentation was summed up as "lots of new useless features and very
costly to implement, and it will be slow". This is what most users who
got ANY information at all got. Very few users went to the lengths you
did. 


>On the difficulty of implementing the proposed F8x, I feel that I must
>take the word of the experts that it will be difficult.  I just think
>that it will be worth the cost.  For each person-year that goes into
>writing a compiler, how many person-years go into people developing
>applications using that compiler?  

Exactly the point propronets have been making.

> As for the speed of the compiler, my own opinion is this
>is a non-issue.  
> 
I must disagree here. Compile speeds are killing VLIW vendors (Cydrome
and Multiflow). Many shops spend much of their time developing code,
or using code which has parameters coded in (especially memory sizes)
which must be recompiled (ABAQUS comes to mind as an example of a
production code which employs a program generator to create a program
which is compiled linked and then run).

Fortunately many of the features of f8x will REDUCE the number of
compiles. Dynamic memory, modules (implemented intellegently), etc.
The point being that, as a vendor, we are sensitive to compile speeds
(because our users are!)

>The last time I worried about that was on a RAYTHEON
>703, and even then the paper tape reader was slower.  I spend a lot
>more time reading code than compiling it.  That makes many of the
>features in modules and module procedures so very important;  to get
>understandable readable code for complex applications.  You can only
>worry about efficiency after you have the right answer.

True, but newer programmers like their systems to be highly
interactive. This is a great appeal of workstations :>). This is not
to say that I am against f88 (quite the contrary), just that compile
speed is important.

The "public review" is not done very well at all (procedurally).
Unless the public is well informed, their comments are meaningless
(e.g. How many complained about f88 not compiling f77 programs ? )
Furthermore the procedure is biased towards finding fault (no
scientific survey simply asks for responses from the public at
large... those who are UNhappy respond most often). Furthermore the
draft standard is designed as a formal document to be used for
compiler writers to work from. This is a very different sort of
document from a user guide (like Metcalf and Reid). User's who have
never worked with operator overloading and modules can't be expected
to decrypt the standing document and comment.




Keith H. Bierman
It's Not My Fault ---- I Voted for Bill & Opus

psmith@mozart.uucp (Presley Smith) (10/25/88)

In article <5826@vdsvax.steinmetz.ge.com> lamson@sierra.uucp (scott h lamson) writes:
>
>
>> psmith@mozart.uucp (Presley Smith) writes
>> Vendors have a way of providing information to their users and collecting
>> information from their users.
>> I believe that the vendors are in touch with the users and that they 
>> listen to their user groups.
>>  We also
>> attempt to represent the view of that group to X3J3 in the way we vote.
>
>Help me here.  I work at General Electric Corporate Research and
>Development.  Probably not one of your smaller companies.  We have 300
>Sun's, 3 dozen or so VAX's, an IBM 3081K, and a Convex 210 (220
>soon...).   No vendor has come here to talk about Fortran  8x ever
>that I have been told about.  In order to have an informed opinion,
>I subscribe to the ACM Fortran Forum,
>ordered the draft of F8x, 6 copies of Fortran 8X Explained, and have
>asked about F8x at most vendor presentations.  But the vendors have
>not made an effort to publicize the proposed standard here one way or
>the other.  As for the user groups (DECUS, SHARE, CUG, or others), at
>least at our site, the people who might go to them are the systems
>managers, not people who (work for a living.. :) ) use fortran in
>their work.  I will respecfully listen to compiler writers from
>vendors tell me how difficult the proposed F8x is to implement, that
>is their area of expertise, I do physics.  But I reject the claim that
>any vendor has the right to say their opinions represent the views of
>their customers.  Certainly that is not the case here, as no vendor
>has asked anyone I know about F8x.
 
Each of the companies that you mentioned has a user group.  I know that 
the DECUS group, the CONVEX group, and both of the IBM groups have 
been involved in providing information on Fortran 8x. 

Part of the problem that you experienced was that in the U.S., the vendors
were not allowed to make copies of the standard and provide that to users
directly.  You had to order copies of the proposed standard from Global
Engineering and pay for those copies.  This is due to an arrangement 
between a part of the ANSI organization and Global.  The reason is that
there was so much demand for copies of draft standards that it was 
taking more and more of their resources to copy and mail drafts.  They
off loaded this effort to Global.   Global is a "for profit" corporation.
They make their money from selling draft standards.  If ANSI allowed 
each group to copy and distribute those standards, then Global would not
make the money they are due under this arrangement.   Many members of 
X3J3 are not happy with this arrangement, but that is the arrangement
at the current time.  

Most users group meetings are not designed for just system managers. 
But, the vendors and the user groups do NOT have control of who comes
to those meetings or control of what information gets passed around 
in the company when the attendees return.  If you know of someone that
is in your company and attending a user group meeting, you should 
talk with that person and get your input to them and should ask for 
copies of what is distributed at the user group.   Obviously not 
everyone who is interested can go to every user group meeting.

Some of the effort that I know about are:

   1.  DECUS - had a session last year and again a couple of weeks ago
       on FORTRAN 8x.  There are lots of sessions at a DECUS meeting 
       and one must choose to go that session as opposed to another 
       session.   We had people that attended both of those sessions
       and brought back copies of their presentations and resolutions.
       That information is passed around inside the company to those
       who have expressed an interest in seeing it. 

   2.  IBM - I don't know about the IBM user groups, but I do know that
       IBM sent a packet of information to several thousand sites on 
       the FORTRAN 8x issues.  Again, IBM does not have the name and
       address of each user and so that packet was sent to some 
       central person at each site.   I suspect that information was
       not distributed in many cases...

   3.  CONVEX - Discussed the proposed standard at their 1987 User 
       Group in October, 1987 and again in October, 1988.  We provided
       handouts, etc. for those who attended the session.  At the 
       October, 1988 meeting that session was one of the best attended
       of any session at the meeting.  

My point in all this is that various vendors and user groups have attempted
to provide the public with information on the proposed standard and have
encouraged users to discuss the issues with them.   Did I talk to everyone
that attended our user group about this issue, NO.  But, I did discuss it
with anyone that was interested enough in the issue to want to talk.  I 
also collected cards from various users that requested more information
and provide additional documentation to them on the subject.  It's like 
the current politial debate that is going on.  I cannot say that I am 
representing all the users that we have because there is a diverse set
of views amoung our users.   I can say that I've talked to numerous 
users of our equipment and believe that I have a good sense of what 
those users have told me about their position on the proposed standard.
This, unfortunately, is NOT a black and white issue.  Also, there is no
way that any vendor can discuss this with every user of their equipment.

The bottom line is that many of the vendors have attempted to find out what
their user base thinks and have tried to provide ways for that user base
to provide input.  It's certainly not a perfect system.  I take some 
exception to the argument that the vendors are ignoring the input from
their users or that the some other group knows better than the vendors
what "users" want.  The vendors are listening.  It's up to the users
to make their views known. 

>
>On the difficulty of implementing the proposed F8x, I feel that I must
>take the word of the experts that it will be difficult.  I just think
>that it will be worth the cost.  For each person-year that goes into
>writing a compiler, how many person-years go into people developing
>applications using that compiler?  Could it be less than an order of
>magnitude?  As for the speed of the compiler, my own opinion is this
>is a non-issue.  The last time I worried about that was on a RAYTHEON
>703, and even then the paper tape reader was slower.  I spend a lot
>more time reading code than compiling it.  That makes many of the
>features in modules and module procedures so very important;  to get
>understandable readable code for complex applications.  You can only
>worry about efficiency after you have the right answer.

Complaints about the speed of the compilers many times come from 
users that are on larger, faster machines.   I've heard Cray users
complain about the speed of the CFT77 compiler relative to the older
CFT compiler...

We receive requests continually for faster compilers.  In fact, since
1986, we have nearly doubled the speed of our compilers.  And, we still
have users that want it to be faster...and we are still working on 
making it faster.    That's direct input from our users.  

I think that people get used to a particular compilation speed and when
it's slower than expected, they notice quickly.

lamson@sierra.uucp (scott h lamson) (10/25/88)

In article <74284@sun.uucp> khb%chiba@Sun.COM (Keith Bierman - Sun Tactical Engineering) writes:

> > As for the speed of the compiler, my own opinion is this
> >is a non-issue.  
> I must disagree here. Compile speeds are killing VLIW vendors (Cydrome
> and Multiflow).
I haven't used Multiflow's or Cydrome's, so I can't say much about
them.  I have used two Fortran compilers on the CRAY-2, one of which runs
about ten times longer (cft77 written in Pascal) than the other (cft2
written in assembler).  I have no problem with cft77's compile times.
It has supported more fortran-77 features sooner, and produces
something like 20% faster code.  So within one order of magnitude,
compile time is, for me, not a concern.  Functionality and optimized
resultant code is just more important. 

        Scott|  ARPA:      lamson@ge-crd.arpa
       Lamson|  UUCP:      uunet!steinmetz!sierra!lamson
(518)387-5795|  UUCP:      uunet!steinmetz!lamson!crd

lamaster@ames.arc.nasa.gov (Hugh LaMaster) (10/25/88)

In article <74170@sun.uucp> khb@sun.UUCP (Keith Bierman - Sun Tactical Engineering) writes:
>
>I propose that opponents of the standard give specifics. Propoents can
>then respond in a reasoned way. Nothing is gained by pointing out that
>certain vendors are out to gut the standard, calling members of the
>committee ComputerScientists, or claims that physicsts make poor
>programmers. 
>
>
>
>

I would like to point out that there are many people out there who accept
MOST of the proposed features of the standard without accepting the 
complete standard.  The specific feature that seems to give the most
people trouble is that of MODULE.  I wonder if everyone could agree
that a subset of the new standard which left out the MODULE stuff
(or anything which breaks the self-contained nature of fortran subroutines)
would be a reasonably "small" and simple to compile language.  Many
fortrans already support pointers and vector array notation.

So, getting back to the original posting: suppose we leave out MODULE.
How many people still object?



-- 
  Hugh LaMaster, m/s 233-9,  UUCP ames!lamaster
  NASA Ames Research Center  ARPA lamaster@ames.arc.nasa.gov
  Moffett Field, CA 94035     
  Phone:  (415)694-6117       

mike@arizona.edu (Mike Coffin) (10/25/88)

From article <5833@vdsvax.steinmetz.ge.com>, (scott h lamson):
[regarding speed of FORTRAN compilers]
> I have used two Fortran compilers on the CRAY-2, one of which runs
> about ten times longer (cft77 written in Pascal) than the other (cft2
> written in assembler).  I have no problem with cft77's compile times.
> It has supported more fortran-77 features sooner, and produces
> something like 20% faster code.  So within one order of magnitude,
> compile time is, for me, not a concern.  Functionality and optimized
> resultant code is just more important. 

Perhaps you would be more concerned if you weren't compiling on a
Cray-2?  One weakness of the standard (it seems to me) is that it seems
to be designed for extremely powerful machines.  A lot of FORTRAN code runs
on machines several orders of magnitude slower than a CRAY-2.  While the
difference between compilation times of 10 seconds and 100 seconds may
not be enough to worry about, the difference between 2 minutes and 20
minutes --- the same factor of 10 --- is the difference between a
quick stretch and a long coffee break.
-- 
Mike Coffin				mike@arizona.edu
Univ. of Ariz. Dept. of Comp. Sci.	{allegra,cmcl2,ihnp4}!arizona!mike
Tucson, AZ  85721			(602)621-2858

khb%chiba@Sun.COM (Keith Bierman - Sun Tactical Engineering) (10/26/88)

>
>I would like to point out that there are many people out there who accept
>MOST of the proposed features of the standard without accepting the 
>complete standard.  The specific feature that seems to give the most
>people trouble is that of MODULE.  I wonder if everyone could agree
>that a subset of the new standard which left out the MODULE stuff
>(or anything which breaks the self-contained nature of fortran subroutines)
>would be a reasonably "small" and simple to compile language.  Many
>fortrans already support pointers and vector array notation.
>
>So, getting back to the original posting: suppose we leave out MODULE.
>How many people still object?
>

MODULE has proven easy to implement in other languages, no reason to
believe f88 will entail any difficulty. Lack of module makes creating
libraries (using overloading, and abstract data typing , etc.) hard.
If EVERYTHING else were accepted, I would tolerate the removeal of
MODULE, but I would lobby for it to be implemented anyway. 

Frankly I don't understand why anyone wants to remove MODULE.




Keith H. Bierman
It's Not My Fault ---- I Voted for Bill & Opus

khb%chiba@Sun.COM (Keith Bierman - Sun Tactical Engineering) (10/26/88)

In article <7540@megaron.arizona.edu> mike@arizona.edu (Mike Coffin) writes:


   Perhaps you would be more concerned if you weren't compiling on a
   Cray-2?  One weakness of the standard (it seems to me) is that it seems
   to be designed for extremely powerful machines.  A lot of FORTRAN code runs
   on machines several orders of magnitude slower than a CRAY-2.  While the
   difference between compilation times of 10 seconds and 100 seconds may
   not be enough to worry about, the difference between 2 minutes and 20
   minutes --- the same factor of 10 --- is the difference between a
   quick stretch and a long coffee break.

Most of the time spent in such a compiler is the optimizer. If you
don't have a fancy vector processor and a complex set of related
functional units, compilation goes very quickly.

The difference between 2 minutes and 2minutes 45 seconds may feel like
forever, but with f88 you might not need such big source files.
Keith H. Bierman
It's Not My Fault ---- I Voted for Bill & Opus

lamson@sierra.uucp (scott h lamson) (10/26/88)

>Perhaps you would be more concerned if you weren't compiling on a
>Cray-2?
>  A lot of FORTRAN code runs
>  on machines several orders of magnitude slower than a CRAY-2.  
Given the estimates of how long some people say it will take to get
production F8x (current draft) compilers on the streets, this may not
be a problem.  Your opinion may differ, but I don't care about compile
time (within one order of magnitude) even though my primary software
development environment is a sun workstation.  (I guess about two
orders of magnitude slower than the Cray-2, but I haven't been
actively benchmarking things lately).
The language we select as a standard now will be in use from what...
1990 or 1991 up until 2000??  How many machines in 1995 will be slow
enough to make compiling F8x a REAL big problem?  


        Scott|  ARPA:      lamson@ge-crd.arpa
       Lamson|  UUCP:      uunet!steinmetz!sierra!lamson
(518)387-5795|  UUCP:      uunet!steinmetz!lamson!crd

bobal@microsoft.UUCP (Bob Allison) (10/26/88)

In article <17070@ames.arc.nasa.gov> lamaster@ames.arc.nasa.gov.UUCP (Hugh LaMaster) writes:
>
> [...]
>
>So, getting back to the original posting: suppose we leave out MODULE.
>How many people still object?
>-- 
Well, at least one of the proposals at the last meeting did just that and
it got fairly good support (I would say it was first or second among the
plans).  To me, this is one of two areas in the current draft which really
give me worries: generalized precision is the other.  Now, I don't believe
generalized precision is difficult to implement, I just believe it is a
completely illusory concept.  We don't anticipate machines with more than
three or four floating point precisions, and, if IEEE has their way, those
precisions will be well-defined and portable.  So I support defining a
couple of data types with specified minimum precisions and leaving it at
that (if we defined REAL to be at least 6 digits and some new data type to
be at least 14 it seems we will have solved ninety percent of the problem 
in a portable way.  In fact, more portably than generalized precision which
will not guarantee that if you ask for 14 digits you will get it).  Also,
generalized precision has serious problems if different library vendors
select different precisions to market their libraries in.

I am also worried about array notation on scalar machines: it is true you
can get reasonable code on a scalar machine, but it requires very elaborate
optimization methods, which a lot of companies do not have the resources
to implement.  So, in general, I believe that scalar machines are going to
do a pretty crummy job on array expressions.  I wish we could tighten up 
the array language a little bit to improve that situation somewhat.  But I
cannot argue against the value of array operations.

Bob Allison

ssd@sugar.uu.net (Scott Denham) (10/26/88)

In article <673@convex.UUCP>, psmith@mozart.uucp (Presley Smith) writes:
> 
 (General discussion of user groups and the 8x standard, distribution of
  the draft standard, and vendor distribution of info   deleted)
> 
>    2.  IBM - I don't know about the IBM user groups, but I do know that
>        IBM sent a packet of information to several thousand sites on 
>        the FORTRAN 8x issues.  Again, IBM does not have the name and
>        address of each user and so that packet was sent to some 
>        central person at each site.   I suspect that information was
>        not distributed in many cases...
> 
 I don't know about GUIDE, but the FORTRAN project in SHARE is quite 
active and VERY intersted in the standard. At least 1 session at every
SHARE meeting for the last 4 years has been devoted to 8x - at the very
least an update from the SHARE rep to X3J3, and this past spring in LA
a panel discussion with 5 or 6 members of X3J3 and some very vocal users.
As of mid-year, SHARE now has a representative on X3J3 - prior to that 
SHARE was represented by someone who was also a company rep to that body.
Though the represetation was excellent, it was felt that a rep that had 
no potential conflict between employer/SHARE positions would be better.
 
IBM did distribute a packet of info on the standard, I belive to every
site with a FORTRAN license and every individual registered to receive 
FORTRAN manuals automatically throught their (gag) SLSS system. This 
information, though, was TOTALY negative towards the standard and did
not, IMHO, present a balanced view of the two sides of the argument. 
 
  Scott Denham 
   Western Atlas Interational
    Houston TX
  
   I speak only for myself, if I speak at all.

khb%chiba@Sun.COM (Keith Bierman - Sun Tactical Engineering) (10/27/88)

In article <2910@sugar.uu.net> ssd@sugar.uu.net (Scott Denham) writes:

> >IBM did distribute a packet of info on the standard, I belive to
every 
>.............This information, though, was TOTALY negative
>towards the standard and did not, IMHO, present a balanced view of
>the two sides of the argument.  
>

This is not only IYHO. This is exactly why many have characterized the
x3j3 public responses as being "vendor biased". The information
presented to the public was not "high quality".

(* sigh *) 

Keith H. Bierman
It's Not My Fault ---- I Voted for Bill & Opus

lamson@sierra.uucp (scott h lamson) (10/27/88)

In article <673@convex.UUCP> psmith@mozart.uucp (Presley Smith) writes:

> psmith@mozart.uucp (Presley Smith) writes
>  I take some 
>   exception to the argument that the vendors are ignoring the input from
>   their users or that the some other group knows better than the vendors
>   what "users" want.  The vendors are listening. 

I didn't say vendors maliciously were ignoring user input or made NO
effort to solicit user opinion.  I did say and maintain that, at least
here in GE (and apparently elsewhere), those efforts were ineffective.
Because of that, your comments to X3J3 should be either your personal
opinion (just like mine are) or possibly Convex Computer Corp's
official opinion (if they chose), but should not carry the weight that
you are speaking for all Convex users (such as myself).  That is the
real point I wanted to make, and I hope that's what I said.
{now if you want to nit pick, we have only had our convex since march,
 but that isn't the point since the IBM and DEC machines have been
here for a long time.}  

> It's up to the users
>   to make their views known. 
Who do you want me to talk to?  If my letter to X3J3 wasn't clear 
enough, or if the person at Convex I should talk to can't get it, let
me know.

User groups like DECUS and SHARE will not get enough real fortran
users.  Better forums would be SIAM, APS, ACS, AIAA, etc.  
But that raises the issue of who should be publicizing the draft
standard, X3J3 members, vendors or ANSI???
        Scott|  ARPA:      lamson@ge-crd.arpa
       Lamson|  UUCP:      uunet!steinmetz!sierra!lamson
(518)387-5795|  UUCP:      uunet!steinmetz!lamson!crd

psmith@mozart.uucp (Presley Smith) (10/28/88)

In article <5858@vdsvax.steinmetz.ge.com> lamson@sierra.uucp (scott h lamson) writes:
>In article <673@convex.UUCP> psmith@mozart.uucp (Presley Smith) writes:
>
>> psmith@mozart.uucp (Presley Smith) writes
>>  I take some 
>>   exception to the argument that the vendors are ignoring the input from
>>   their users or that the some other group knows better than the vendors
>>   what "users" want.  The vendors are listening. 
>
>I didn't say vendors maliciously were ignoring user input or made NO
>effort to solicit user opinion.  I did say and maintain that, at least
>here in GE (and apparently elsewhere), those efforts were ineffective.
>Because of that, your comments to X3J3 should be either your personal
>opinion (just like mine are) or possibly Convex Computer Corp's
>official opinion (if they chose), but should not carry the weight that
>you are speaking for all Convex users (such as myself).  That is the
>real point I wanted to make, and I hope that's what I said.
>{now if you want to nit pick, we have only had our convex since march,
> but that isn't the point since the IBM and DEC machines have been
>here for a long time.}  
>

Each member of X3J3 is an "individual expert" unless the member declares
that the membership is organizational (Per the SD-2).  To my knowledge,
the only organizational member on X3J3 is IBM.  

I certainly do not claim to represent the CONVEX user base.  I have 
certainly talked to many in the user base at various meetings, etc.
and have collected their input on the subject.  As with any issues
of this magnitude, there are many differences of opinion.    

I'm sure that the vendor efforts to obtain the opinions of their users 
are not always effective.  My point is that I've seen lots of criticism
that the vendors are ignoring the "user" input or that some other person
or group of people is more "in tune" with the "user's" desires.   The  
users had their opportunity for input during the public comment period.
And, about 400 provided their input.   Many of the vendors have 
attempted to obtain the input from their user base also.  

>> It's up to the users
>>   to make their views known. 
>Who do you want me to talk to?  If my letter to X3J3 wasn't clear 
>enough, or if the person at Convex I should talk to can't get it, let
>me know.
>

You did exactly the right thing.  Your comment is Number 321 in the 
public review.  The X3J3 committee will consider your comments along
with the other 396 comments that were received and attempt to come
to a consensus on what changes should be made to the  proposed standard
to address the public input.  Each member of X3J3 should have a copy
of your comment and all the other comments that have been received.
Your comment is quite clear and well thought out. 

I note that in your public comment, you commented on the public review
process and the fact that "computer vendors claimed to be speaking 'for 
their users.'   I urge the committee not to accept any such nonsense from
any vendors who might make such claims." (Page 3 of your public comment.)

I totally agree with you.  I also don't want the committee to accept
such nonsense from some of the USERS on the X3J3 committee who claim
to speak for "majority" the users.  They, like the vendors, can speak only 
for themselves or for their company and not the user community as
a whole.   I don't believe that any vendor or any other user can 
accurately represent EXACTLY your views on all issues before X3J3.

>User groups like DECUS and SHARE will not get enough real fortran
>users.  Better forums would be SIAM, APS, ACS, AIAA, etc.  
>But that raises the issue of who should be publicizing the draft
>standard, X3J3 members, vendors or ANSI???

I am certainly believe that the proposed standard would have gotten
a wider review had it been published some of the various groups
that you mention.   Unfortunately, the ANSI rules did not allow
that to happen.  

bobal@microsoft.UUCP (Bob Allison) (10/28/88)

In article <74566@sun.uucp> khb%chiba@Sun.COM (Keith Bierman - Sun Tactical Engineering) writes:
>In article <7540@megaron.arizona.edu> mike@arizona.edu (Mike Coffin) writes:
>
>
>   Perhaps you would be more concerned if you weren't compiling on a
>   Cray-2?  One weakness of the standard (it seems to me) is that it seems
>   to be designed for extremely powerful machines.  A lot of FORTRAN code runs
>   on machines several orders of magnitude slower than a CRAY-2.  While the
>   difference between compilation times of 10 seconds and 100 seconds may
>   not be enough to worry about, the difference between 2 minutes and 20
>   minutes --- the same factor of 10 --- is the difference between a
>   quick stretch and a long coffee break.
>
>Most of the time spent in such a compiler is the optimizer. If you
>don't have a fancy vector processor and a complex set of related
>functional units, compilation goes very quickly.
>
>The difference between 2 minutes and 2minutes 45 seconds may feel like
>forever, but with f88 you might not need such big source files.
>Keith H. Bierman
>It's Not My Fault ---- I Voted for Bill & Opus

Ah, but this is precisely the problem: on a small scalar machine, an
optimization phase is just as time-intensive as on a Cray, but the array
language reduces the amount of optimization necessary on a Cray (well,
a little) and greatly increases the amount of optimization necessary on
a scalar machine.  

"If you don't have ... a complex sex of related functional units": this
is the same guy who couldn't understand why anyone was against MODULEs,
I believe (if not, accept my apologies; but the point is still valid).

Also, run-time performance will necessarily decrease, since I can't figure
out how to do compile-time analysis of an array statement such as:

A = RESHAPE(ESHAPE(A),TRANSPOSE(SPREAD(B,3,I)))

(Complete nonsense, but it makes the point that at compile time I have
no idea what the size of intermediate array expressions will be).  So, while
I am in favor of the concept of array operations, I want people to realize
it will not be a freebie, and I want to try to reduce the possibility of
statements like the above popping up.

Bob Allison

bobal@microsoft.UUCP (Bob Allison) (10/28/88)

In article <5838@vdsvax.steinmetz.ge.com> lamson@sierra.uucp (scott h lamson) writes:
> [...]
>be a problem.  Your opinion may differ, but I don't care about compile
>time (within one order of magnitude) even though my primary software
>development environment is a sun workstation.  (I guess about two
>orders of magnitude slower than the Cray-2, but I haven't been
>actively benchmarking things lately).
>The language we select as a standard now will be in use from what...
>1990 or 1991 up until 2000??  How many machines in 1995 will be slow
>enough to make compiling F8x a REAL big problem?  
>

Well, you may not care about compile time, but what about execution time.
I can personally guarantee that, if you use array expressions, running
any reasonable 8X program will be at least 25% slower than an equivalent 
program written in 77 (to avoid an often belabored point: if such a 
program can be written in 77).  I can make this statement with confidence 
for FORTRAN compilers on the PC, probably until at least 1995.  Many other 
scalar machines will be in the same boat.

I agree that machines will speed up by more than 25% in the interim, but
most people don't buy a machine which runs 25% faster just so their software
can run as fast as it used to.  They buy the machine so THEIR software runs
25% faster.

Bob Allison

mbkennel@phoenix.Princeton.EDU (Matthew B. Kennel) (10/29/88)

In article <5833@vdsvax.steinmetz.ge.com> lamson@sierra.uucp (scott h lamson) writes:
>
>... I have used two Fortran compilers on the CRAY-2, one of which runs
                                              ^^^^^^ !!
>about ten times longer (cft77 written in Pascal) than the other (cft2
>written in assembler).  [stuff deleted]
>  So within one order of magnitude,
>compile time is, for me, not a concern.  Functionality and optimized
>resultant code is just more important. 


Perhaps there's a connection here?  :-)






Matt K
mbkennel@phoenix.princeton.edu

lamaster@ames.arc.nasa.gov (Hugh LaMaster) (10/29/88)

In article <1128@microsoft.UUCP> bobal@microsoft.UUCP (Bob Allison (uunet!microsoft!bobal)) writes:

>Well, you may not care about compile time, but what about execution time.
>I can personally guarantee that, if you use array expressions, running
>any reasonable 8X program will be at least 25% slower than an equivalent 
>program written in 77 (to avoid an often belabored point: if such a 

Well, I wasn't going to butt in on this, but, I don't follow this.  On the
Cyber 205 at least, when the compiler recognizes array constructs (I don't
mean Q8 calls for those in the know, but rather, implicit and explicit
vector constructs) it generates optimal code.  On many newer 
microprocessors, there will be a significant advantage to optimally
pipelined code, and it is easier to generate optimal code for array
constructs when the array operations are already defined. 

A previous poster gave an example that used vector temporaries.  No problem
that I know of.  You just allocate space on the runtime stack.  Depending
on what kind of machine it is you are talking about, you may use an
intermediate representation that preserves the explicit vectors, and
copies the vector temporaries on the stack.  Then again, if you have a
scalar machine, you may not.  I just don't see why it is going to be so
hard to generate code for scalar machines as some people have been saying.
My experience is that it works the other way...



-- 
  Hugh LaMaster, m/s 233-9,  UUCP ames!lamaster
  NASA Ames Research Center  ARPA lamaster@ames.arc.nasa.gov
  Moffett Field, CA 94035     
  Phone:  (415)694-6117       

khb%chiba@Sun.COM (Keith Bierman - Sun Tactical Engineering) (10/29/88)

In article <1127@microsoft.UUCP> bobal@microsoft.UUCP (Bob Allison (uunet!microsoft!bobal)) writes:
>>
>>Most of the time spent in such a compiler is the optimizer. If you
>>don't have a fancy vector processor and a complex set of related
>>functional units, compilation goes very quickly.
>>
>Ah, but this is precisely the problem: on a small scalar machine, an
>optimization phase is just as time-intensive as on a Cray, but the array
>language reduces the amount of optimization necessary on a Cray (well,
>a little) and greatly increases the amount of optimization necessary on
>a scalar machine.  

No Bob it isn't even close. There is no need to do massive instruction
scheduling, dependency analyses nor most of the fun things which crop
up in "real machine optimizers". Also interprocedural analysis is much
less interesting (since the cost of a contex switch is vastly cheaper,
reg saves, breaking the pipelines, and dozens of other effects). If
this were true compiles which take minutes with my Lahey compiler (or
seconds on a Sun4 with our compiler) would take hours (viz. the cydra
5 compiler, pathalogical cases).

>"If you don't have ... a complex sex of related functional units": this
>is the same guy who couldn't understand why anyone was against MODULEs,
>I believe (if not, accept my apologies; but the point is still valid).

No you're right. I'm that guy. Look at any Modula II implementation;
they compile very quickly, and their internal organization (in some
cases) is quite clean. Most are the products of small groups, working
in a very limited time. F88's modules should not be any harder to implement.

>
>Also, run-time performance will necessarily decrease, since I can't figure
>out how to do compile-time analysis of an array statement such as:
>
>A = RESHAPE(ESHAPE(A),TRANSPOSE(SPREAD(B,3,I)))
>
>(Complete nonsense, but it makes the point that at compile time I have
>no idea what the size of intermediate array expressions will be).  So, while
>I am in favor of the concept of array operations, I want people to realize
>it will not be a freebie, and I want to try to reduce the possibility of
>statements like the above popping up.

a) I strongly suspect that such knowlege exits...among those who have had
   to cope (cdc, cray, convex, compass, etc. also among those who have
   implemented apl-like languages). 

b) for a simple scalar machine why do you really care ? dynamic memory
   is already required for f88 (and C, and Modula, and nearly all
   operating systems, and etc.). Deferring such things to run time hurts
   high performance machines, not "simple scalar processors".

khb


Keith H. Bierman
It's Not My Fault ---- I Voted for Bill & Opus

khb%chiba@Sun.COM (Keith Bierman - Sun Tactical Engineering) (10/29/88)

In article <1128@microsoft.UUCP> bobal@microsoft.UUCP (Bob Allison (uunet!microsoft!bobal)) writes:

>>be a problem.  Your opinion may differ, but I don't care about compile
>>time (within one order of magnitude) 
>>
>
>Well, you may not care about compile time, but what about execution time.
>I can personally guarantee that, if you use array expressions, running
>any reasonable 8X program will be at least 25% slower than an equivalent 
>program written in 77 (to avoid an often belabored point: if such a 
>program can be written in 77).  I can make this statement with confidence 
>for FORTRAN compilers on the PC, probably until at least 1995.  Many other 
>scalar machines will be in the same boat.

1) I doubt that it will take Lahey and his merrie crew anywhere near
   that long.

2) Those working in the realm of high performance are well aware of
   the fact that 5-25% of the code consumes 75-95% of the cycles (e.g.
   a famous structural code, in a slightly outdated version, spent 97%
   of its time in 7 lines of code on a cydra 5). If our vendor of
   choice (sun of course :>) can't optimize the array facilities, the
   user uses the nifty profiling tools to determine where the glitch
   is, and rewrites a few lines of code.

   Those who balk at such fun and games run slower, chose a different
   vendor, or buy different machines. But when you get to the world of
   high performance, this is ALWAYS necessary to get peak performance.


>I agree that machines will speed up by more than 25% in the interim, but
>most people don't buy a machine which runs 25% faster just so their software
>can run as fast as it used to.  They buy the machine so THEIR software runs
>25% faster.

True. But by the time f88 is widely available machines can be 2x as
fast. Most user's of PC's now have 80286's or 8088's, running at
moderate clocks. 25mhz+ 80386/7 machines are already
available and do pretty well. (* RISC chips do even better *).

The real point is will it reduce the cost of developing software. (*
yes it will *), this cost is much higher than the productively lost by
having to hand optimize a few modules, in the most critical applications.


>Bob Allison


Keith H. Bierman
It's Not My Fault ---- I Voted for Bill & Opus

bill@hcx2.SSD.HARRIS.COM (10/31/88)

As regards representation of users:

How many times have your Senator or Congressman asked you PERSONALLY
what your opinion is on an issue coming up for a vote in the Senate
or the House?  (I would wager the number is very small, close to
zero.)  Yet, they purport to represent you on each of those issues.

My point is that no member of X3J3, vendor or otherwise, can ask EVERY
user his/her opinion on every issue, or even a significant subset of
the issues.  Most of us have tried, through surveys, user groups,
various discussion forums, etc., to get a "representative" sample of
opinions.  Unless a user is totally alone in his stand on a particular
issue, theoretically his/her voice has been heard by someone somewhere
sometime.  Just because you haven't been asked personally, that doesn't
mean you are unrepresented.

Remember: a good democratic government requires participation by the
electorate, via letters to Congressmen as well as at the ballot box.
The same applies to ANSI standards: YOU are responsible for getting
your voice heard.  Don't wait for someone else to do it for you; if
you do, don't be surprised that your views aren't incorporated.

"Ask not what the Standard can do for you, ask what you can do for
the Standard."

bill@hcx2.SSD.HARRIS.COM (11/01/88)

As regards compile time and the array language:

The gentleman who thinks that optimizers only do vectorization is just dead
wrong.  We (Harris) have a very good optimizer, yet we don't have a vector
machine at all.  YOU may not be concerned about compile speed, but our
customers certainly are.  Consider that our USERS (not us) came up with a
feature known as DATAPOOL, which is a variant of COMMON.  The difference is
that the location of variables within a DATAPOOL is not specified to the
compiler, but rather to a separate program; thus references to DATAPOOL
variables are resolved at link time, rather than by the compiler as an
offset into a COMMON block.  The chief advantage is that one can rearrange
the variables within the DATAPOOL without recompiling all the program units
that reference them; one merely relinks the program.  Our users invented
this because (re)compilation was too slow!

As for the array language, let me offer a concrete example.  Consider
the following F77 fragment:

      S = 0
      DO 10 I = 1,N
         DO 20 J = 1,M
            B(J,I) = C(I,J)
   20    CONTINUE
         K = I + 100
         S = S + A(K)
   10 CONTINUE

Now this code was obviously written by a clever programmer, as the
array A has no relationship to B and C except that it has the same
number of elements.  However, this programmer noticed that he could
save the outer loop overhead by putting the summation of A inside
the outer loop with the transposition of C into B.  Now consider the
equivalent F8x code:

B(1:M,1:N) = TRANSPOSE(C(1:N,1:M))
S = SUM(A(100:N+100))

Note that it is impossible for the _programmer_ to use the nice
array-language facility AND tell the compiler that it is okay to
jam two of the (implied) loops together.  The analysis required
of the compiler to figure this out (in the general case) is roughly
equivalent to that required to vectorize the original F77 code.
On a scalar machine, then, the F8x code will run slower; how much
depends on the ratio of the loop overhead to the actual computation.
(Clearly, in this example the loop overhead must have been significant,
or the programmer wouldn't have written the F77 code as he did.)

This example, while real enough, is not nearly as complicated as what one
typically encounters in real applications.  Just as most of the analysis
for vectorization involves making sure that the vectorized code gets the
same answer, the same is true for the "scalarization" of array-language
code.  The BIG difference is that vectorizers usually run on high-end
machines, whereas the "scalarizers" will be running on low to medium-sized
machines.  The hit on compile time will be much more noticeable, if the
analysis is done; if it isn't done, then the hit on execution speed will be
just as noticeable.  Either way, the user loses.

hirchert@uxe.cso.uiuc.edu (11/05/88)

Bill Leonard(bill@hcx2.SSD.HARRIS.COM) writes about the cost of using the
Fortran 8x array notation on a scalar processor.  First, I would like to pick
a couple of nits:

>As for the array language, let me offer a concrete example.  Consider
>the following F77 fragment:

>      S = 0
>      DO 10 I = 1,N
>         DO 20 J = 1,M
>            B(J,I) = C(I,J)
>   20    CONTINUE
>         K = I + 100
>         S = S + A(K)
>   10 CONTINUE

>                                                    Now consider the
>equivalent F8x code:

>B(1:M,1:N) = TRANSPOSE(C(1:N,1:M))
>S = SUM(A(100:N+100))
           ^^^  not that it matters, but this should be 101.

>(Clearly, in this example the loop overhead must have been significant,
>or the programmer wouldn't have written the F77 code as he did.)

On a number of scalar machines I have worked on, the separate loop version might
actually be faster (due to locality of reference, instruction caches, and other
such effects).  Even on machines where the combined loop version is faster, the
difference is rarely significant in absolute terms, so that its significance
in relative terms is typically important if this computation in embedded in yet
another loop so that a significant part of the overall program is spend doing
this operation.  My experience suggests that while there are a few programmers
that would evaluate these kind of issues, most do not.  The most likely
reasons for the programmer to have combined the loops are
. that the effective sizes of A, B, and C are related and the programmer wishes
  to insure that the size computed on is the same
. that the programmer has been told it is more efficient to combine loops and
  does so without verifying that this is true for his program on his machine
. that it takes one less DO statement and one less CONTINUE statement to
  write the combined loop
The last reason (compact notation) may well be the most likely.

>This example, while real enough, is not nearly as complicated as what one
>typically encounters in real applications.

If you mean that the most complicated statement in a typical application would
be more complicated you may be right.  If you mean that the typical statement
in a typical application would be more complicated, I disagree; most
applications consist primarily of a large number of very simple statements.

>                                            Just as most of the analysis
>for vectorization involves making sure that the vectorized code gets the
>same answer, the same is true for the "scalarization" of array-language
>code.

Here I am in total agreement.  In fact, this will be true of register-based
vector processors (such as those from Cray Research or Alliant) as well.  The
conversion between parallel notation and efficient sequential notation involves
reordering of operations the must be analyzed for validity.  For the most part,
it doesn't matter which direction you are converting or how far, the basic
analysis is the same.

As I see it, array notation offers three benefits:
. It is a more compact notation (and thus, for some people, a more convenient
  notation) for expressing many common operations on arrays.
. Its basic semantics are more highly parallel (at the cost of higher
  temporary storage usage).  In many cases, analysis can be done to determine
  the equivalence of this parallel notation and the traditional sequential
  notation.  In cases where this analysis either cannot be done or where it is
  not done because of cost, the parallel notation will produce better
  performance on machines which support parallel or overlapped evaluation.
  (Originally, all the parallel machine were top of the line machines.  Today,
  there are a number of "middle tier" machine with these properties and we are
  beginning to see add-on boards with these properties for machines in the
  workstation class.  In other words, parallel and overlapped execution issues
  are affecting an ever increasing fraction of the Fortran community.)
. The array notation puts under processor control a number of aspects of
  array computation where getting good performance is processor dependent.
  For example, when doing array operations on a two-dimensional array, there
  are a number of factors the go into the decision of which loop is the inner
  loop, including locality of reference, memory bank conflicts, and relative
  length of the two loops.  The relative importance of these factors varies
  from processor to processor, so on one machine it may be best one way while
  on another machine it may be better the other way.  Thus, a sequential
  statement of the operation will be optimal for only one of those machines.
  The parallel notation lets the processor choose the inner loop and thus be
  optimal one both machines.

It also has costs:
. It adds to the complexity of expression analysis, etc.
. In cases where the parallel-sequential equivalency analysis can not or is not
  done, the parallel notation will produce worse performance on purely
  sequential machines.  (Not necessarily significantly worse, but definitely
  worse)
. In the added factors under the processor's control, if the analysis is done
  incorrectly (or not done), the wrong decision may be made, producing worse
  code than what the programmer could have written using the sequential
  notation.

On some machines, the benefits outweigh the costs.  On others, the costs
outweigh the benefits.  From the number of vendors already implementing the
array notation, it is clear that the array notation is likely to be available
on machines where the benefits outweigh the costs.  Given that, I ask the
following questions:
. Do we want to standardize the notation available on such machines (to improve
  portability among such machines)?
. Is it likely that people working on machines where the costs outweigh the
  benefits will nevertheless wish to import programs orginally written on
  machines where the array notation is available?

Finally, I might note that even if the array notation is adopted as part of the
Fortran standard, it would be possible to leave it out of your compiler if you
provide a separate tool that converts the parallel notation to a sequential
notation accepted by the compiler.  (In this case, the "standard-conforming
processor" would be the combination of the compiler and the tool.)  On some
machines this might be a beneficial implementation strategy:
. When importing programs written using the array notation, the cost of
  analyzing that notation to sequentialize could be paid just once.
. When writing codes on the machine, the user could decide whether or not to
  use the array notation by deciding for himself whether the notational
  benefits justified the cost of the extra analysis on each translation cycle.

Kurt W. Hirchert     hirchert@ncsa.uiuc.edu
National Center for Supercomputing Applications