All the program units can be compiled together, or each one can be compiled separately. Either way a set of object modules is produced, one from each program unit. The job of the linker is to collect up all these object modules, allocate absolute addresses to each one, and produce a complete executable program, also called an executable image. It is, of course, necessary to re-link the whole program. The operations which the linker performs are relatively simple so that linkers ought to be fast.
Many text editors have options which ease the drudgery of entering Fortran statements.
An even more useful feature is a warning when you cross the right-margin of the statement field at column 72. Most text editors make it easy to delete and insert whole words, where a word is anything delimited by spaces. It helps with later editing, therefore, to put spaces between items in Fortran statements. This also makes the program more readable. On most systems it is not necessary for the main program unit to come first.