More About Judging

The previous chapter described the array of major response-judging features of the TUTOR language. We can now discuss the judging process in more detail, after which we will see how to treat responses that don't quite fit the categories of the previous chapter.

Stages in Processing the -arrow- Command

The following is a summary of the several stages of processing involved when there is an -arrow- command.

  1. The -arrow- command is executed. The arrow is displayed on the screen, and a marker is set to remember the unit and location within the unit of this -arrow- command. Regular processing continues until a judging command is encountered, at which point there is a wait while the student types a response.
  2. The student presses NEXT or otherwise completes his or her response. TUTOR uses its -arrow- marker to start judging at the statement following the -arrow- command. Only judging commands are executed; all regular commands are skipped. Execution of a -specs- command sets a -specs- marker to remember the unit and location within the unit of this -specs- command.
  3. Some judging command terminates judging and succes- sive regular commands are executed until a judging com- mand is encountered, which ends this regular processing, even if we are several levels deep in -do-s. There is no “undoing”. An -arrow- or -endarrow- will also halt this regular processing without permitting “undoing”. (If no judging command terminates the judging phase, the end of a unit with no more “undoing” to do; an -endarrow-; or another -arrow- will end Stage 3 and make a “no” judg- ment.)
  4. If the -specs- marker has been set, regular processing begins at the statement following the last -specs- command encountered. (The -specs- marker is cleared.) This process- ing terminates in the same way as the regular processing of Stage 3. If the judgment is not “ok,” the -arrow- is not satisfied. The student must erase part or all of the response and enter a different response, which initiates Stage 2 again.
  5. The search state is initiated if there is an “ok” judgment. TUTOR again uses the -arrow- marker to start processing at the statement following the -arrow- command, this time in a search for another -arrow-. Only -join-s are executed, all other commands (regular or judging) are skipped during this search state. If an -arrow- command is encountered, TUTOR begins Stage 1 for this additional -arrow-. If an -endarrow- command is encountered, the search state ends and regular commands are processed. If neither -arrow- nor -endarrow- is encountered, the student can press NEXT to go on to the next main unit, having satisfied all the -arrow-s.

This all sounds rather complicated, written out in this way, but in most practical cases this structure turns out to be quite natural and reasonable. It is, nevertheless, useful to look at some unusual cases to further clarify the various processing stages.

Repeated Execution of -join-