ABSTRACT

The FORTRAN syntax introduced so far is largely platform-independent, and the goal of further enhancing portability motivated some of the recommendations in §12 and §13 about program design and the choice of language features and coding practices. However, there have been many occasions on which we encountered the UNIX™ operating system in passing and several on which we could not avoid studying some aspect in more detail. The discussions of program compilation and execution in §1, of system routines in §6.6.2, of hanging prompts in §9.1.2, of unit assignments in §9.4, and of man pages in §12.3.1 all assumed that we develop and run our programs under UNIX™, and in a few cases it was convenient also to assume that we use the bash shell. We will meet up with UNIX™ again when we consider program timing in §15.1, the GETFIL routine of §18.3, the TIMER routine of §18.5, and the changeall shell script of §18.6. It is UNIX™ that runs our programs for us, and most programs also rely on additional operating system services for interacting with the human user, doing I/O to files, finding out what time it is, and other functions that depend on the world outside of FORTRAN. The program development process also depends in many ways on the compiler, debugger, and other tools provided with the operating system.