It is instructive to examine the relationship between the programming language and the program. The language is the set of rules that governs the formation of programs. To be sure that she can be understood, Julia Child must write according to the rules of standard English. (Actually, she will probably write according to the rules for presenting recipes in English.) Similarly, Beethoven must be sure to obey the rules for musical notation. Notice that the rules that Beethoven must follow are more precise and restrictive than the rules that Julia Child must follow.
In both of the examples above, the computer was a human being. What is typically meant by a computer program is a means of conveying instructions to a digital computer. So for example, you (as the programmer) might write a program (instructions written in Fortran) so that the computer can behave like a spreadsheet or a word processor. These instructions are in the form of a Fortran program, and they control the behavior of the computer, much like a recipe controls the behavior of a cook and a score controls the behavior of a musician.
The first part of the process of learning to program in Fortran is learning what a computer is capable of doing and how to write down instructions to do those things. The rest of the process (and, in fact, the hard part) is learning how to write beautiful programs. Beautiful programs are easy for humans to read, modify, and understand; they can be efficiently run on computers; and they are correct.
Anyone with a little bit of training can create a recipe, a sonata, or a Fortran program. It takes a lot of training, experience, and creativity to come up with a exciting recipe, a pleasing sonata, or a beautiful program.
Hamlet Project