Answer to Exercise 18

| ANSWER TO EXERCISE 18
| Note that whether reacting before or after, the psychiatrist does not cut any actions short, because `react_before` and `react_after` both return false.
    Object -> psychiatrist "bearded psychiatrist"
      with name "bearded" "doctor" "psychiatrist" "psychologist" "shrink",
           initial "A bearded psychiatrist has you under observation.",
           life
           [;  "He is fascinated by your behaviour, but makes no attempt to
                interfere with it.";
           ],
           react_after
           [;  Insert: print "~Subject puts ", (name) noun, " in ",
                           (name) second, ". Interesting.~^^";
               Look: print "~Pretend I'm not here,~ says the psychiatrist.^";
           ],
           react_before
           [;  Take, Remove: print "~Subject feels lack of ", (the) noun,
                   ". Suppressed Oedipal complex? Mmm.~^";
           ],
      has  animate;

Back to the exercise in section 16

Mechanically translated to HTML from third edition as revised 16 May 1997. Copyright © Graham Nelson 1993, 1994, 1995, 1996, 1997: all rights reserved.