5.1.5 Interaction Versus Run-to-Completion

It might seem at this point that nearly any computer program could be called an interactive system, but that isn’t the case. Traditionally, computer programs were often viewed as run-to-completion systems. The virus-scanning programs found on many modern computers are examples of run-to- completion systems. They pop up a little box that says, “I’m about to scan your computer for viruses,” and then they go ahead and do it (often whether you like it or not!). There’s no notion of continuous interaction with the human user. All of the sample Python programs we’ve shown in these readings so far have been “run-to-completion” systems. Such systems are sometimes still useful for teaching fundamental concepts in computer science. Yet, wherever possible, we’re going to try to use examples of interactive systems in this course from this point onwards.