anchor.diff:              exit(async_function_died);
   
           {'DOWN', _, process, AccumulatorPid, _} -> 
  -            ?PRINT({down, process, AccumulatorPid}),
               % The accumulator process has died. 
               % Communicate dying_message to the pool, 
               % kill the AsyncFunction process, and exit.
  
positive.code:             accumulator_loop([Pid|Guardians], Actions, Waiting, TimerRef);
  
          {'DOWN', _, process, Pid, _} ->
              ?PRINT({down, process, Pid}),
              accumulator_loop(Guardians -- [Pid], Actions, Waiting, TimerRef);
  
          {add_actions, NewActions} ->
  
negative.code:             pool_loop([JoinPid|Processes]);
  
          {'DOWN', _, process, LeavePid, _} ->
              [Pid!{'LEAVE', LeavePid} || Pid <- Processes],
              NewProcesses = Processes -- [LeavePid],
              case NewProcesses == [] of 
  