The "initial entry unit" (ieu)
You may have noticed that the first few statements of the previous example (which write a message, load a character set, and then erase the screen) are not preceded by a -unit- statement. This is intentional.
TUTOR statements which precede the first -unit- statement (“unit intro' in this case) constitute an “initial entry unit” which is performed whenever a student enters the lesson. The “initial entry unit” (or “ieu”) is the logical place to put various kinds of initializations, such as a -charsetstatement to load characters which will be used throughout the lesson. Although -define-, -vocabs-, and -list- statements are not actually executed (they are only instructions to TUTOR on how to interpret -calc-, -concept-, and -answer- statements in preparing a lesson for student use), they can also be placed in the “ieu” at the beginning of the lesson, for the sake of readability.
The importance of the “ieu” lies in the fact that it is performed no matter where the student starts within the lesson (even if the student does not start at the first unit statement). TUTOR is capable of keeping track of a student's place within a lesson, so that a student who leaves without finishing a lesson is able to restart the next day where he or she left off. It is important, in the restarting process, to load the appropriate character set. The restart procedure can not be executed properly if the -charsetstatement comes after the first -unit- statement (since the student will not go through the first part of the lesson again).
Suppose the student is to restart in unit “middle”, which looks like this:
The “ieu” is utilized in such a way that TUTOR acts as though the “ieu” were done at the beginning of the restart unit:
This pseudo-do is the reason for following the -charset- statement with a full-screen erase. We don't want the “loading” message to interfere with the display to be created by unit “middle”.