This appendix attempts to define some of the basic concepts and terms that are used throughout the rest of this book. As this book is specifically about awk, and not about computer programming in general, the coverage here is by necessity fairly cursory and simplistic. (If you need more background, there are many other introductory texts that you should refer to instead.)
At the most basic level, the job of a program is to process some input data and produce results. This is shown graphically in Figure D-1.
The “program” in the figure can be either a compiled program (such as ls), or it may be interpreted. In the latter case, a machine-executable program such as awk reads your program, and then uses the instructions in your program to process the data.
When you write a program, it usually consists of the following, very basic set of steps, as shown in Figure D-2: