previous up next print clean
Next: FORTRAN90 BASICS Up: WHY FORTRAN90? Previous: Language Barrier

Evolution of Fortran

Fortran90 has certain powerful features, which fill traditional gaps in Fortran programming. The lack of dynamically allocatable memory, which has spawned a number of workarounds, is no longer a problem. User-defined structures, long available to C programmers (and a source of jealously for Fortran programmers) and operator overloading, available in C++, are now available as well. Unlike C, however, Fortran90 maintains Fortran's limited definition of pointers, its complex valued variables, etc., which serve to make coding more straightforward. Fortran90 also has a number of useful array manipulation intrinsics (matrix multiplications, transposes, etc.) which further serve to make code simple, and clean.

Fortran90 implements its new features chiefly through the unifying concept of the module. Modules provide what is termed an explicit interface between programs, subroutines, data structures, etc. What this means is that it enables the compiler to explicitly check the types and dimensionality of arguments as they are passed from place to place, and thus to resolve overloaded operations and so forth. More importantly, from the user's point of view, modules and their explicit interfaces provide a single conceptual basis for the advanced programming tools available in the language.


previous up next print clean
Next: FORTRAN90 BASICS Up: WHY FORTRAN90? Previous: Language Barrier
Stanford Exploration Project
11/12/1997