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.
The following is a summary of the several stages of processing
involved when there is an -arrow- command.
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.
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.
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.)
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.
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-