<div dir="ltr"><div><div><div><div>Hello,<br><br>I'm reading the book Erlang and OTP in Action and came across this part:<br>"In Erlang, an atom is a special kind of string constant that is identified only by the<br>
characters in the string, so that two atoms are always considered to be exactly the<br>same if they have the same character representation. But internally, these strings<br>are stored in a table and are referred to by the table index, so that checking atoms <br>
for equivalence at runtime amounts to comparing two small integers; and each time<br>you use an atom, it takes up only one word of memory. (The index number used for<br>any particular atom is automatically assigned at runtime and can vary from one run<br>
of the system to the next; there is no way, and no need, for the user to know this.)"<br><br></div>Now, this got me thinking.  What if I have two systems that send messages to one <br>another.  I update one and include a new atom that I'm using.  This atom gets sent <br>
to system #2 that cannot recognize it just yet.  Does that mean that that message <br>will sit in the receiving thread's queue until it can recognize it or can be <br>handled/thrown away?<br><br></div>As a follow-up question, does it make sense to use atoms in this fashion?<br>
<br></div>Thanks in advance,<br></div>--Yves<br></div>