(j3.2006) reply to a post, apparently in na-digest
Thu Oct 25 20:00:28 EDT 2012
I'm Dan Nagle, chair of PL22.3, the domestic US Fortran committee,
and John Reid is the convener of WG5, the international Fortran committee.
We have both received several emails lately, apparently in response
to a posting from Van Snyder in na-digest. We have composed a reply,
I'm pasting it below. I hope it may be posted to the same venue
as Van's original post. (If I am mistaken in my surmise that this
is an appropriate email address to which to address a reply, I apologize
and I hope you may be able to direct me in a better direction.)
Reply pasted below:
There are two costs involved in adding a feature to the Fortran Standard.
First, there is the cost in effort by the committees - as the language
gets bigger in response to requests, so it becomes more difficult to find
all the interactions between the features and avoid ambiguities.
Second, and more important, is the cost to compiler vendors in implementation.
Parameterized derived types (PDTs) are one of the last features
to be implemented by most compilers, due to the cost of doing so.
Compiler suppliers have estimated that units are likely to be more expensive
than PDTs to implement.
Fortran 2003 and Fortran 2008 have added many costly-to-implement features
to Fortran. Compilers are struggling to implement them all --
those for which there is great demand and those for which the demand
is more modest. Currently, compilers vary widely in their coverage
of Fortran 2008. This impedes portability, as many developers will use
only the common subset. Thus, the International Fortran committee
has decided to allow only very modest new features into the next revision
of the Fortran standard; changes will be limited to the removal of simple
deficiencies in, and discrepancies between, existing facilities.
There are several instances where this may be done without too great an effort.
This is, at least in the main part, to allow compiler suppliers time to implement
all of Fortran 2008. Many compilers have not yet completed
their implementation of Fortran 2003. The value of further major new features
at this time, is unclear, to say the least.
We have heard from Grant Petty that there is a module that accommodates
dimensions and units. He says that the web page
describes the work and includes links to the module source and a
paper that was published in 2001 in "Software ? Practice and Experience".
He says that the module goes significantly beyond what is described in
the paper, and it includes not only fractional dimensions but also
predefined values of a very large number of physical constants and units.
How about trying this?
The standards committees are already committed to creating two
Technical Specifications. These are mini standards for features that are
deemed to be too important to wait for the next revision of the standard.
The committees promise to add their features, apart from any glitches found
through use. The first extends Interoperability with C, and is about to be
published. Work has started in earnest on the second, which extends
Coarrays. There is support for doing this, even if it will
consume the committees' resources to define the features,
and the compiler suppliers' resources to implement them. Following publication,
of course, the compiler suppliers must implement the features described by the TSs
before applications programmers will see the benefits. Note that the facilities
described are not available by using features of the current standard.
If you could join the Fortran standards committee, you could help relieve
its workload. Are you able to do so? You could also advocate
your favorite new features, such as engineering units.
More information about the J3