anchor.diff:      {_, false, _} -> {false, bad_message_name};
       {_, _, false} -> {false, bad_payload_types}
     end;
  -can_send(_Message, MonitorNode) ->
  +can_send_at(_Message, MonitorNode) ->
     {false, bad_node_type, MonitorNode}.
   
  
positive.code: -module(monitor_gen).
  -compile(export_all).
  -define(LOCAL_PROTOCOL_FILE, "test.scr").
  
  % Generates a monitor from a Scribble AST.
  %
  
negative.code:     {_, false, _} -> {false, bad_message_name};
      {_, _, false} -> {false, bad_payload_types}
    end;
  can_receive_at(_Message, MonitorNode) ->
    {false, bad_node_type, MonitorNode}.
  
  
  can_send_at(Message, MonitorNode = {Id, send_node, Info}) ->
    {Recipients, MessageName, PayloadTypes} = Info,
    CorrectRecipients = lists:sort(Recipients) == lists:sort(message:message_recipients(Message)),
    CorrectMessageName = message:message_name(Message) == MessageName,
  