cfortran.h : Interfacing C or C++ and FORTRAN
cfortran.h is an easy-to-use powerful bridge between C and FORTRAN.
It provides a transparent, machine independent interface between
C and FORTRAN routines and global data.
C and C++ are generally equivalent as far as cfortran.h is concerned.
Unless explicitly noted otherwise, mention of C implicitly includes C++.
The following presentation is a good introduction to mixed language programming.
Burkhard D. Burow. "Mixed Language Programming",
In Computing in High Energy Physics (CHEP'95), Rio de Janeiro, Brazil,
Sept. 1995, editors R. Shellard and T.Nguyen, World Scientific, pp. 610-614.
Here is the paper and the slides of the presentation.
It introduces cfortran.h and alternative methods for mixed language programming
and thus can help you decide if cfortran.h can be of use to you.
Knowing its popularity might help you decide if cfortran.h can be of use to you.
The following is my best estimate of the number of users of cfortran.h.
Since its first release in 1990, I have exchanged e-mails with hundreds of users of cfortran.h.
Assuming that a small fraction of users of cfortran.h ever send me e-mail,
then cfortran.h has a few thousand users. You easily can find users in a www search.
The cfortran.h software consists of the single C header file cfortran.h.
The documentation is the single file cfortran.html.
The documentation also is available at its original location http://wwwinfo.cern.ch/asd/cernlib/cfortran.html.
The documentation also is available as the original ASCII file cfortran.doc.
A variety of small independent applications are available to test and demonstrate cfortran.h.
All the applications are contained in a compressed tar file cfortran.examples.tar.gz.
The following will unpack the applications into a directory named eg/.
The program zcat is the GNU version or compatible.
unix> zcat cfortran.examples.tar.gz | tar xf -
Though NOT recommended for most purposes,
the above applications also are available in a single C file cfortest.c
and a single Fortran file cfortex.f.
If cfortran.h has served you well, you may want to look at the recent instance of graph reduction
described at http://www-zeus.desy.de/~funnel/TSIA/index.htm.
cfortran.h provides an application with transparent mixed language programming.
In other words, cfortran.h hides the details of mixed language programming from the application.
In a similar vein, graph reduction (a.k.a. dataflow) has long promised transparent parallelism,
reliability and other execution features. The promises have not been fulfilled, since graph reduction
lacked a practical implementation. Though not yet widely known, practical graph reduction recently
has been achieved.
Burkhard D. Steinmacher-Burow, Postfach 1163, 73241 Wernau, Germany.