Tonto | ||
---|---|---|
<< Previous | Next >> |
Currently, foo is implemented as a UNIX csh script, which makes use of the perl text processing language which comes standard with UNIX[1]. You will rarely, if ever, need to use foo on its own.
If you write a new module, you will place the module file with a .foo extension in the foofiles directory. After modifying the Makefile to place your module in the correct hierarchical position, you just type make.
You can, if you wish, apply the foo preprocessor separately.
When the foo command is applied to a file x.foo with the .foo extension, the foo code in this file is changed into Fortran95 code which includes some C-preprocessor macros, and this code is written to a specified file. In addition, another file is generated which contains the Fortran95 generic interfaces which are required if you want to program using TONTO.
In order to work, the foo command uses two files: foo.perl and types.foo. The file foo.perl contains instructions that the perl language needs to change foo code into Fortran95. The types.foo file contains type information which is relevant to the TONTO system.
The TONTO file gaussian.foo contains code which describes gaussian functions which are commonly used in quantum chemistry. To use the foo preprocessor on the file gaussian.foo, and to see what the emitted Fortran95 code looks like, type:
perl -w scripts/foo.perl foofiles/gaussian.foo gaussian.f90 gaussian.int |
[1] | However, there is no guarantee that future versions of foo will be implemented in this way |