An OTP application
$ rebar3 compile
$ rebar3 as test compile
$ rebar3 as test shell
$ eunit:test([{application, calculator}]).
$ rebar3 compile
$ rebar3 eunit
- Написать распределенную БД
db:new() -> Pid.
db:destroy(Pid) -> ok.
db:write(Key, Element, Pid) -> ok.
db:delete(Key, Pid) -> ok.
db:read(Key, Pid) -> {ok, Element} | {error, Reason}.
db:match(Element, Pid) -> [Keyl, ..., KeyN].
- В качестве хранения можно использовать всё, что угодно
- Имплементация через gen_server/supervisor/application