C was first used in CONGEN for implementing the conformational
search algorithm. This algorithm required complicated data structure
processing and recursion, for which the language is eminently suitable.
Later on, C was used for operating system interfaces because many of
the operating system calls in C are portable. For example, the
storage management Fortran library uses
malloc in the C library
to obtain additional storage from the operating system without
a requirement for machine dependent code.
One limitation in the use of C is I/O. The Fortran and C I/O
libraries are not compatible. Therefore, all I/O from C must be done
using Fortran routines. See the source code for
etc. in cutil.c for routines which provide this functionality.