title: Erlang distributed message sending - what is the meaning of the first atom in the tuple?
body: <p>The Erlang <a href="http://www.erlang.org/doc/reference_manual/expressions.html#send" rel="nofollow noreferrer">User's Guide</a> describes the <a href="http://erlang.org/doc/reference_manual/expressions.html#send" rel="nofollow noreferrer">send operator</a> as</p>
  
  <blockquote>
    <h3>8.9  Send</h3>
  
  <pre><code>Expr1 ! Expr2
  </code></pre>
    
    <p>Sends the value of <code>Expr2</code> as a message to the process specified by
    <code>Expr1</code>. The value of <code>Expr2</code> is also the return value of the
    expression.</p>
    
    <p><code>Expr1</code> must evaluate to a <strong>pid</strong>, a <strong>registered name</strong> (atom), or a <strong>tuple
    <code>{Name,Node}</code></strong>. <code>Name</code> is an atom and <code>Node</code> is a node name, also an
    atom.</p>
    
    <ul>
    <li>If <code>Expr1</code> evaluates to a name, but this name is not registered, a <code>badarg</code> run-time error occurs.</li>
    <li>Sending a message to a pid never fails, even if the pid identifies a    non-existing process.</li>
    <li>Distributed message sending, that is, if <code>Expr1</code> evaluates to a tuple    <code>{Name,Node}</code> (or a pid located at another node), also never
    fails.</li>
    </ul>
  </blockquote>
  
  <p>In the case of distributed message sending, it is not clear to me what the first atom represents in <code>{Name,Node}</code> from the code of the remote node or process.</p>
  
  <p>Your help is appreciated.</p>