As I have looked into Fortran 90, I've collected a few notes and pointers to web sites which may be of use to others who are learning Fortran 90. Fortran 90 is now widely available on most scientific supercomputers and workstations (and available for desktop computers). Cray froze their Fortran-77 compiler a while back and has made Fortran-90 the new standard. Fortran 90 is a superset of Fortran77, and so allows an upward compatible development path for a large body of Fortran programs and programmers to incorporate modern computing techniques.
By using just a few new features, such as run-time allocation of arrays, array object features, and converting include files of common blocks to modules, it is possible to greatly "modernize" our coding techniques and produce more manageable code. An excellent paper which makes this clear is:
For example, they show how fortran-77 subroutine calls of the form: My notes on a few nice F90
features
Subtle differences between "assumed size"
(f77) and "assumed shape" (f90) arrays.
Other useful web sites include:
Charles Karney's clear notes on upgrading from f77 to f90
http://wwwcn.cern.ch/asdoc/f90.html
A fairly well written overview of fortran-90 (in html).
http://www.cs.rpi.edu/~szymansk/oof90.html
Web page on High-Performance Object-oriented programing in Fortran-90,
by one of Decyk's co-authors.
Michael Metcalf's Fortran 90 CNL Articles
http://www.hpctec.mcc.ac.uk/hpctec/courses/Fortran90/F90course.html
A well written f77 to f90 conversion course for f77
programmers (in postscript).
An online f90 course for the f77 programmer, with a useful reference section Intrinsic Functions In Fortan 90.
http://www.fortran.com/fortran/tutorials.html
A more detailed list of f90 tutorials.
http://www.nersc.gov/software/
The National Energy Research Supercomputer Center has a lot of good online
documentation.
http://www.acl.lanl.gov/~mwd/acl/otherf90.html
Another list of f90 sites.
An introduction to Fortran 90 for beginners.
A comparison of C++ and Fortran90 for Object-Oriented Scientific Programming
C++ Programming for Scientists