test1
сам по себе является просто атомом, а не ссылкой на локальную функцию.Чтобы создать ссылку на функцию, используйте fun Function / Arity, как показано ниже.
-module(anony).
-export([test/0, test1/0]).
test1() -> "hello".
test() ->
C = fun(F) -> Val = F(), io:format("~p ", [Val]) end,
lists:foreach(C, [fun test1/0]).
Вы также можете создать анонимную функцию, которая вызывает test1
следующим образом: fun() -> test1() end
, но нет причин для этого, еслиу вас есть дополнительные значения, которые вы хотите передать или тому подобное.