Е
iex --name hc@localhost -S mix
после чего пытаюсь запустить etop:erl -s etop -node hc@localhostSize: a a a
Е
iex --name hc@localhost -S mix
после чего пытаюсь запустить etop:erl -s etop -node hc@localhostЕ
Error Couldn't connect to node hc@localhostЕ
V
def foo([], result), do: result
def foo([h | t], result) do
case bar(h) do
{:ok, x} -> foo(t, [x | result])
:error -> :error
end
end
Е
Е
VS
iex --name hc@localhost -S mix
после чего пытаюсь запустить etop:erl -s etop -node hc@localhostlocalhost - невалидный домен, используйте адрес или localhost.localdomain, если прописан и имя ноды с etop erl -name etop@127.0.0.1 -s etop -node hc@127.0.0.1Е
localhost - невалидный домен, используйте адрес или localhost.localdomain, если прописан и имя ноды с etop erl -name etop@127.0.0.1 -s etop -node hc@127.0.0.1localhost.localdomain использовал и добавил -name параметр для erlDR
{:function, :foo, 2, 10,
[
{:line, 2},
{:label, 9},
{:func_info, {:atom, Foo}, {:atom, :foo}, 2},
…
{:call_last, 2, {Foo, :foo, 2}, 2},
…
{:case_end, {:x, 0}}
]}{:call_last, 2, {Foo, :foo, 2}, 2}
call в foo из case-а - так как это последнее, что происходит вызывает call_last инструкцию, которая:Deallocate words on stack and does a tail recursive call (jump) to the function at Label. Does not update the CP register with a return address, making return bypass current code location.
DR
V
{:function, :foo, 2, 10,
[
{:line, 2},
{:label, 9},
{:func_info, {:atom, Foo}, {:atom, :foo}, 2},
…
{:call_last, 2, {Foo, :foo, 2}, 2},
…
{:case_end, {:x, 0}}
]}{:call_last, 2, {Foo, :foo, 2}, 2}
call в foo из case-а - так как это последнее, что происходит вызывает call_last инструкцию, которая:Deallocate words on stack and does a tail recursive call (jump) to the function at Label. Does not update the CP register with a return address, making return bypass current code location.
DR
DR
:beam_disasm.file(beam)
V
case :error -> :errorDR
case :error -> :errorIK
IK
IK
ŹR