anchor.diff:      {Port,PortData} ->                  %from the port
         waiting_handshake(handle_portdata(St, PortData));
       {'EXIT',Port,Reason} ->                 %port died, us too
  -      die({port_died,Reason});
  +      ?LOG({port_died,Reason});
       quit ->
  -      die(quitting)
  +      die()
     after
       ?BORED -> waiting_handshake(bored(waiting_handshake,St))
     end.
  
positive.code:       idle(handle_portdata(St, PortData));
      {'EXIT',HandPid,Reason} ->
        %%handler died
        die({handler_died,Reason});
      {'EXIT',Port,Reason} ->
        %%port died, us too
        die({port_died,Reason});
      quit ->
        die(quitting)
    end.
  
  waiting(St = #st{gtk_pid=GtkPid, gtk_port=Port},CmdArgs,OldReps) ->
  
negative.code:     {Port,{data,PortData}} ->           %from the port
        waiting(handle_portdata(St, PortData),CmdArgs,OldReps);
      {'EXIT',Port,Reason} ->                 %port died, us too
        ?LOG({port_died,{Reason,CmdArgs}});
      quit ->
        die()
    after
      ?BORED -> waiting(bored(waiting,St),CmdArgs,OldReps)
    end.
  