как составляется список erlang vm?

Когда я создаю список в erlang, например, в оболочке erlang:

1> [1, 2].

Насколько я понимаю, в вм этот список будет представлен как односвязный список.

Как эта структура создается средой выполнения Erlang? Например, это построено что-то вроде этого:

создать структуру в памяти для хранения списка, который завершает списоксоздайте структуру в памяти для хранения элемента '2' и ссылку на пустой список.создать структуру в памяти для хранения элемента «1» и ссылку на элемент «2».

Правильно ли я считаю, что следующий код c и erlang - основная часть работы?

https://github.com/erlang/otp/blob/maint/lib/stdlib/src/lists.erlhttps://github.com/erlang/otp/blob/maint/erts/emulator/beam/erl_bif_lists.chttps://github.com/erlang/otp/blob/maint/erts/emulator/beam/erl_term.hhttps://github.com/erlang/otp/blob/maint/erts/emulator/beam/erl_term.c

erl_term.h содержит макросmake_list но я пока не смог найти реализацию ...

Ответы на вопрос(1)

Ваш ответ на вопрос