Size: a a a

2019 November 21

LW

Lev Walkin in ErlangRus
сорян
источник

ML

Maksim Lapshin in ErlangRus
мне не подслушать чужой трафик, а легально подключиться к демону
источник

ML

Maksim Lapshin in ErlangRus
=)
источник

ML

Maksim Lapshin in ErlangRus
не, понятно что любую проблему проще всего решать раздувая фен со словами «опять припаиваться к jtag», но тут пока не так =)
источник

LW

Lev Walkin in ErlangRus
тогда да, просто открываешь его и отдаёшь в какую-нибудь хрень, которая умеет работать с файловыми дечкрипторами. gen_tcp :)
источник

ML

Maksim Lapshin in ErlangRus
меня смущает, что обычно gen_tcp отдает пачки данных, не порезанные по сообщениям, а тут будут явные границы
источник

LW

Lev Walkin in ErlangRus
откуда?
источник

LW

Lev Walkin in ErlangRus
тут тоже не будет границ
источник

LW

Lev Walkin in ErlangRus
UDS это стрим-абстракция, а не message
источник

LW

Lev Walkin in ErlangRus
то, что они там через gen_udp его открывают, это нонсенс
источник

Y

Yar in ErlangRus
А открыть как файл не получится?
источник

ML

Maksim Lapshin in ErlangRus
Lev Walkin
UDS это стрим-абстракция, а не message
я видимо запутался
источник

ML

Maksim Lapshin in ErlangRus
Yar
А открыть как файл не получится?
их поддержка есть напрямую в gen_tcp
источник

Y

Yar in ErlangRus
Ок, спасибо, запомню
источник

LW

Lev Walkin in ErlangRus
Yar
А открыть как файл не получится?
нет, файл используется только как имя и способ проверить permissions. ему нужно делать connect или bind/listen
источник

ML

Maksim Lapshin in ErlangRus
ну и там вообще всякие мерзкие хитрости можно делать типа переслать через unix socket открытый сокет (отдать его в другой процесс) и его перепишут по пути
источник

AB

Alexander Bogosyan in ErlangRus
Имеет ли право такой подход:
maybe_throw({error, Reason}) -> throw(Reason);
maybe_throw(Else) -> Else.

и потом пишем линейный код в try/catch:
try
   {ok, Result1} = maybe_throw(some_api:foo1()),
   {ok, Reault2} = maybe_throw(some_api:foo2(Result1),
   .....
catch
   throw:Reason -> {error, Reason}
end
источник

AB

Alexander Bogosyan in ErlangRus
в качестве избавления от вложенности case?
источник

ŹR

Źmićer Rubinštejn in ErlangRus
Alexander Bogosyan
Имеет ли право такой подход:
maybe_throw({error, Reason}) -> throw(Reason);
maybe_throw(Else) -> Else.

и потом пишем линейный код в try/catch:
try
   {ok, Result1} = maybe_throw(some_api:foo1()),
   {ok, Reault2} = maybe_throw(some_api:foo2(Result1),
   .....
catch
   throw:Reason -> {error, Reason}
end
Слишком дорого по накладным расходам
источник

ŹR

Źmićer Rubinštejn in ErlangRus
Я бы так не делал
источник