В проектах с открытым исходным кодом я вижу следующие два способа написания спецификаций:
Характеристики в комментариях
@spec start_link() -> {ok, pid()}
Спецификации в исходном коде
-spec start_link() -> {ok, pid()}
Какая разница? Один предпочтительнее другого?