A term describing a program whose inPUt and outPUt are interleaved, like a conversation, allowing the user' s inPUt to depend on earlier outPUt from the same run. The interaction with the user is usually conducted through either a text-based interface or a graphical user interface. Other kinds of interface, e.g. using speech recognition and/or speech synthesis, are also possible. This is in contrast to batch processing where all the inPUt is prepared before the program runs and so cannot depend on the program' s outPUt. (1996-06-21)