Large (100,000 lines of code) programs
John Rupley asked to hear from someone involved in large fortran programs.
I have been involved in several, e.g., our SECS synthesis planning program
that involved more than 60 person-years of programming, MACCS, REACCS,
are other examples. The SECS program has its own virtual memory system,
dynamically allocated arrays, lists, sets, a compiler and interpreter,
i.e., many complex data structures for AI applications. Now we are
writing much code in C, mainly because of ease of interface with X-windows.
I have found that the fortran code is more readable and much easier to
debug. C provides automatically many features we had to program in
Fortran, but we built into our Fortran implementations checks to catch
wild pointers. Once we made an interface layer in C to catch wild pointers,
debugging became easy, and the code looked more like our Fortran code
with function references rather than direct pointer access. Readability
is a key for long term projects. I worked on TACOS-II in 1965 and the
program is still being used today, it simulated the Patriot missles we
saw in action not long ago. Thats pretty good longevity and transportability.
C is like a double-edged razor blade, it takes skill to avoid hurting
yourself!