[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: fortran standard
Hi Chuck,
Thanks for the vote of confidence on unrestrained whining in
the name of academic discourse!
Since I know nothing about parallel code, I'll leave that to
you and Jim. But someday soon a 'user' will ask 'The Feff
Developers' about it.
On Fri, 9 Mar 2001, Charles Bouldin wrote:
> On standards...it's hard to be opposed to standards when you work at
> a place with the word "standards" in the name :). However, we must
> clearly tolerate some violations of the f77 standard, like double
> precision complex. Others, like looser commenting conventions,
> include files, long variable names, using characters that are not
> technically in the f77 collating set, these are somewhat more
> debatable. I favor a pragmatic approach in which we trade off
> practicality against strict adherence to the ANSI F77 document. So
> long as feff compiles and runs without complaint via g77, that may be
> a reasonable starting point? Perhaps there are other things we can
> think of, other compilers that have to work?
I agree: standards are good, but 25-year-old standards for computer
languages may be ready for retirement. My view is that g77 and f2c
have replaced the ANSI-F77 standard. I'd propose this definition of
a 'Standard Fortran' Guidelines for Feff. Can FEFF be compiled with
IRIX f77
g77 on linux
f2c/cc on at least one system.
Compaq Digital Fortran (v5 or higher) on Win32
Absoft compiler on Mac
I believe that is practical (ie, testing platforms and compilers
readily available to developers) and representative of what
platforms are really used. I believe this permits these extensions:
double precision complex
include files (maybe keep to one 'include' deep).
any character in the ASCII set in the source (maybe not '\' ).
comments beginning with '!' anywhere in source file.
variable and subprogram names up to 32 characters.
do / end do constructs
I'd not say that every single version of the code has to be tested
with those compilers, just major versions. Some questions:
Are cray's still used for Feff?
I know VMS machines are still used for Feff. Should VMS be
added to the list of test platforms? Anyone have access?
On many machines, '\' in code text has a non-standard meaning.
It might be best to avoid these.
As for single-source-file, I think that's OK for code that has one
executable target, not a library to build, and no Fortran/C
mixtures. All of those things have been discussed, in which case
more sophisticated build systems are probably needed.
Build systems have the advantage of not requiring the user to have
any knowledge of how to compile fortran. As the Feff user base
grows, especially into fields not always associated with heavy
computer use, that seems like a worthy goal in its own right.
Thanks,
--Matt
|= Matthew Newville email: newville@cars.uchicago.edu
|= GSECARS, Bldg 434A voice: (630) 252-0431
|= Argonne Natl Lab fax: (630) 252-0443
|= 9700 South Cass Ave http://cars.uchicago.edu/~newville/
|= Argonne, IL 60439 USA
- References:
- Re: mpi
- From: Charles Bouldin <charles.bouldin@nist.gov>