Turn your hangman program from problem 6.2 into a distributed system,
using the Universe teachpack (see tab on the left). You must be able to
play the game using two computers in the end, with one computer providing
an human-computer interface for the guessing player and another computer
providing the human-computer interface for the player that poses the
question. The latter should be completely automated, but the player should
be able to observe the progress of the game.
Design pass-through, a universe
server that simply passes message back and forth between the two
participating worlds. In other words, if the first
world sends a message, the pass-through universe hands it to the second
world -- unaltered and otherwise unobserved; conversely, if the second
world sends a message, the pass-through universe hands it to the first
world.
Design hangman, a program that consumes a string, registers
with the pass-through universe, and inspects the guesses it
receives from the other world.
Design guess, a program which pops up a canvas, registers
with the pass-through universe, and administrates the
"guessing" player's interactions.
Here is a scenario from the middle of a game, played on a single computer:
The game was started with (hangman "hello").
You may assume that the entire program is written by a single pair of
programmers, and that the "questioning" player is not cheating. Consider
what would change about your program if you dropped this assumption and
you had only agreed on the protocol with the creator of the "questioning"
program.