Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
F = {lists,seq},
F(1,10).
что в нем чего-то таки не хватает.
State хранится в record
to_json(Resource) ->
ResModule = element(1),
Proplist = ResModule:proplist(Resource),
Json = mochijson2_fork:encode({struct,[Proplist]}),
{ok,Json}.
to_xml(Resource) ->
ResModule = element(1),
Proplist = ResModule:proplist(Resource),
XML = SomeProplistToXmlGenerator(Proplist),
{ok,XML}.
erlang:element(1, Resource).
?my_fun(Data) ->
Res = Data:some_function(),
% process data
...
my_fun({Module,Data}) ->
Res = Module:some_function(Data),
% process data
...
-module(no_par_mod).
-compile(export_all).
-spec make_caller(Module::atom(), Data::any()) -> fun((Function::atom(), Args::[any()]) -> any()).
make_caller(Module, Data) ->
fun(Function, Args) ->
erlang:apply(Module, Function, [Data|Args])
end.
hello(Instance, X, Y) ->
io:format("Hello, ~s, take these ~w and ~w!~n", [Instance, X, Y]).
caller_demo() ->
Instance = "Kitty",
Caller = make_caller(?MODULE, Instance),
Caller(hello, [apple, orange]).
Вызов функции через кортеж