Size: a a a

2020 June 24

AB

Alex Bubnov in ErlangRus
Я давно не смотрел на апдейты, но по-моему никто из них там и не научился описывать receive
источник

EK

Evgeny Khramtsov in ErlangRus
ага, я бы тоже хотел посмотреть как это сделано
источник

ML

Maksim Lapshin in ErlangRus
Evgeny Khramtsov
ну и ты не будешь вставлять ASN.1 схему внутрь кода :) вот тогда это будет метапрограммирование :)
Почему не буду? :)

Вот у меня есть копипаста спеки на h264. Почему бы ее сразу не скодогенерировать?
источник

EK

Evgeny Khramtsov in ErlangRus
не, ну она же (спека) будет в отдельном файлике, на который ты натравишь asn1ct
источник

AB

Alex Bubnov in ErlangRus
И вообще, имхо акторы для динамической типизации, для статической - csp
источник

AB

Alex Bubnov in ErlangRus
Если кому-то хочется - он может писать компилятор ml под рантайм го
источник

EK

Evgeny Khramtsov in ErlangRus
Evgeny Khramtsov
не, ну она же (спека) будет в отдельном файлике, на который ты натравишь asn1ct
в том смысле что erlc умеет только в Erlang, а asn1ct - только в ASN.1
источник

AB

Alex Bubnov in ErlangRus
Кстати, ещё одна вещь, которой нет в эрланге - протоколы
источник

AB

Alex Bubnov in ErlangRus
Я бы, конечно, предпочёл мультиметоды и протоколы поверх них, но тут уж что есть
источник

ML

Maksim Lapshin in ErlangRus
Alex Bubnov
Кстати, ещё одна вещь, которой нет в эрланге - протоколы
Что именно ты хотел бы решить протоколами?
источник

LL

Lama Lover in ErlangRus
Maksim Lapshin
Что именно ты хотел бы решить протоколами?
Например, по-разному энкодить различные эликсировские структуры в json
источник

s

serkus in ErlangRus
Lama Lover
Например, по-разному энкодить различные эликсировские структуры в json
Матчинга мало?
источник

ML

Maksim Lapshin in ErlangRus
Lama Lover
Например, по-разному энкодить различные эликсировские структуры в json
Я не очень это понимаю. Протокол - это не интерфейс?
источник

VS

Vladimir Sekisov in ErlangRus
протокол есть интерфейс по сути
источник

LL

Lama Lover in ErlangRus
serkus
Матчинга мало?
Ну, я хочу использовать одну библиотеку для энкодинга (без всяких своих врапперов и прочего)

Я эту библиотеку подгружаю в свои проекты и уже в коде этих проектов объявляю имплементации протоколов

Если делать матчинг, то нужно лезть внутрь энкодера (что плохо) или писать враппер (что уменьшает читаемость кода)
источник

LL

Lama Lover in ErlangRus
А если у меня не просто энкодер, а целый набор сторонних функций, которые внутри вызывают encode и я хочу переопределить этот endoce для конкретной эликсировской структуры

Ну и всё такое вот
источник

LL

Lama Lover in ErlangRus
Никто, конечно не мешает передавать модуль в каком-нибудь поле мапы, а потом апплаить функции по этому модулю, но тогда будет не очень понятно как поступать с дефолтными структурами типа списков, тупплов и всего такого
источник

VS

Vladimir Sekisov in ErlangRus
в принципе многое можно
было бы решить, в том числе
и протоколы, развитием
first class modules,
но их убили, к сожалению.
источник

ML

Maksim Lapshin in ErlangRus
Vladimir Sekisov
протокол есть интерфейс по сути
А тогда какая связь между ним и  генерацией жсона?
источник

ML

Maksim Lapshin in ErlangRus
Lama Lover
Ну, я хочу использовать одну библиотеку для энкодинга (без всяких своих врапперов и прочего)

Я эту библиотеку подгружаю в свои проекты и уже в коде этих проектов объявляю имплементации протоколов

Если делать матчинг, то нужно лезть внутрь энкодера (что плохо) или писать враппер (что уменьшает читаемость кода)
Понял
источник