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

Roger Lipscombe roger@REDACTED
Tue Feb 6 18:05:39 CET 2018


Assuming you're talking about passing atoms between different Erlang
nodes using Erlang distribution, you're looking for the "External Term
Format" documentation:
http://erlang.org/doc/apps/erts/erl_ext_dist.html

Atoms are passed as length-prefixed strings. Except where they're
cached. I don't know anything about how that works.

On 6 February 2018 at 16:13, 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
>



More information about the erlang-questions mailing list