[erlang-questions] atom (symbol) interning across distributed instances of runtime

Glenn Kasten gkasten@REDACTED
Tue Feb 6 18:09:22 CET 2018


Thank you Roger and Lukas, that was exactly what I needed.

On Tue, Feb 6, 2018 at 9:06 AM, Lukas Larsson <lukas@REDACTED> wrote:

> There is an atom caching algorithm that is used. It is described here:
> http://erlang.org/doc/apps/erts/erl_ext_dist.html#distribution_header
>
> tldr; atoms are integers inside the same VM. atoms are strings when
> sending in-between nodes, but there is a cache that uses the integers of
> the remote node to send atoms.
>
> Lukas
>
> On Tue, Feb 6, 2018 at 5:13 PM, Glenn Kasten <gkasten@REDACTED> wrote:
>
>> I'm curious about the implementation of message-passing of atoms
>> (symbols)
>> among unrelated runtime instances, in particular how the atoms are
>> interned.
>> I would assume that among a single runtime instance, atoms are passed
>> as small integers rather than strings, yet that would not work between
>> unrelated runtime instances
>> unless the atoms are interned to a consistent value per atoms.
>> For example, at first connection between runtimes, do the runtimes undergo
>> an atom negotiation protocol so they can agree on the interned values?
>> Or something else?
>>
>> https://en.wikipedia.org/wiki/Symbol_(programming)
>> https://en.wikipedia.org/wiki/String_interning
>>
>> Thanks,
>> Glenn
>>
>>
>>
>>
>>
>>
>> --
>> Glenn Kasten
>> Android Media
>> x35392
>>
>> _______________________________________________
>> erlang-questions mailing list
>> erlang-questions@REDACTED
>> http://erlang.org/mailman/listinfo/erlang-questions
>>
>>
>


-- 
Glenn Kasten
Android Media
x35392
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20180206/b7a93d6e/attachment.htm>


More information about the erlang-questions mailing list