Я использую .beam как скрипт, чтобы скрыть свой код и запускать его где угодно.
Обычно вместе работают несколько файлов, например:
entry.erl
helper.erl
....
Можно ли собрать несколько beam-файлов в один beam?
Единственное, что приходит в голову, это встроить beam в erl-файл и затем скомпилировать его, например
["[",
lists:map(fun(Artifact) ->
{ok, Payload} = prim_file:read_file(Artifact),
["{", filename:basename(Artifact, ".beam"), ",", io_lib:format("~w", [Payload]), "},"]
end, Artifacts)
"ok]"]
получив
[{module, <<"....">>}]
а затем загрузить через code:load_file