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 UNIXTM 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 UNIXTM, and in a few cases it was convenient also to assume that we use the bash interactive shell. We will meet up with UNIXTM later when we consider performance measurement in §15.1, the GETFIL routine of §18.3, the TIMER routines of §18.5, and the changeall shell script of §18.6. It is UNIXTM 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.