Size: a a a

2018 December 25

(

( in pro.elixir
Но ведь макросы не для того, чтобы в них разбираться и уж точно не чтобы их композировать
источник

(

( in pro.elixir
Вон, на какую-нибудь Теслу гляньте, там же вообще макросы невероятно круто заходят
источник

AB

Alex Bubnov in pro.elixir
Потому что код с макросами гораздо менее поддерживаем, чем без макросов. Что в либе гораздо важнее, чем в приложении
источник

(

( in pro.elixir
МИНУТОЧЬКА РЕКЛАМЫ ОТКЛАДЫВАЙТЕ СВОИ ХТТПОИЗОНЫ
источник

(

( in pro.elixir
defmodule GitHub do
 use Tesla

 plug Tesla.Middleware.BaseUrl, "https://api.github.com"
 plug Tesla.Middleware.Headers, [{"authorization", "token xyz"}]
 plug Tesla.Middleware.JSON

 def user_repos(login) do
   get("/user/" <> login <> "/repos")
 end
end
источник

AB

Alex Bubnov in pro.elixir
(
Но ведь макросы не для того, чтобы в них разбираться и уж точно не чтобы их композировать
Тем более, write-only код простителен в приложении, но не в библиотеке
источник

BB

Boris Beginin in pro.elixir
Alex Bubnov
Потому что нужно стремиться к отсутствию макросов, а использование их в библиотеках повышает суммарное количество макросов гораздо сильнее использования их в приложениях
Ну я не согласен, я не считаю что макросы это что то плохое, макросы это замечательно, я не вижу никаких проблем в том что бы использовать макросы когда они хорошо задокументированны и используються большым количеством людей. А когда ты хуяриш 1000 макросов в своем приложении, где половина макросов не задокументирована а еще треть вообще деприикейтед, поддерживаемость твоего приложения стремиться к нулю.
источник

(

( in pro.elixir
А без макросов как написать так же компактно?
источник

AB

Alex Bubnov in pro.elixir
(
defmodule GitHub do
 use Tesla

 plug Tesla.Middleware.BaseUrl, "https://api.github.com"
 plug Tesla.Middleware.Headers, [{"authorization", "token xyz"}]
 plug Tesla.Middleware.JSON

 def user_repos(login) do
   get("/user/" <> login <> "/repos")
 end
end
Олло, это пайплайн из функций. Описывается либо кодом, либо данными
источник

AB

Alex Bubnov in pro.elixir
Можно описать данными, а для прода запечь макросом в код для производительности
источник

AB

Alex Bubnov in pro.elixir
Boris Beginin
Ну я не согласен, я не считаю что макросы это что то плохое, макросы это замечательно, я не вижу никаких проблем в том что бы использовать макросы когда они хорошо задокументированны и используються большым количеством людей. А когда ты хуяриш 1000 макросов в своем приложении, где половина макросов не задокументирована а еще треть вообще деприикейтед, поддерживаемость твоего приложения стремиться к нулю.
Поддерживаемость твоего приложения - только твоя проблема. Интерфейс библиотеки - проблема долбаной уймы разрабов по всему миру
источник

АС

Андрей Сыврачев in pro.elixir
Народ, чем подобная ошибка может быть вызвана? Сервер с другой стороны послал - ICMP. - порт не доступен?
источник

АС

Андрей Сыврачев in pro.elixir
код простейший, udp в цикле шлем, но ничего не ждем
источник

АС

Андрей Сыврачев in pro.elixir
до сервера пакеты доходят, но через секунд 10-30 вываливается сообщение и все перестает идти, как будто буфера внутри переполняются
источник

DS

Dmitry Shpagin in pro.elixir
Мне кажется, что явные противники макросов используют фреймворк Phoenix, который пронизан макросами насквозь. Это можно считать лицемерием?
источник

DS

Dmitry Shpagin in pro.elixir
Alex Bubnov
Поддерживаемость твоего приложения - только твоя проблема. Интерфейс библиотеки - проблема долбаной уймы разрабов по всему миру
Не используй библиотеку с хреновым интерфейсом, в чем тут проблема макросов?
источник

(

( in pro.elixir
Alex Bubnov
Олло, это пайплайн из функций. Описывается либо кодом, либо данными
Мне как-то сложно было спорить с такой идиотской логикой, но я смог сформулировать мысль.
А что, много мне нужно будет кода/данных писать, чтобы
> без макросов написать также компактно
?
источник

BB

Boris Beginin in pro.elixir
Alex Bubnov
Поддерживаемость твоего приложения - только твоя проблема. Интерфейс библиотеки - проблема долбаной уймы разрабов по всему миру
и именно по этому макросы работают в либах и не очень работают в частных приложении, но тут есть исключения)
источник

BB

Boris Beginin in pro.elixir
Dmitry Shpagin
Мне кажется, что явные противники макросов используют фреймворк Phoenix, который пронизан макросами насквозь. Это можно считать лицемерием?
Так то внезапно очень много в эликсире написано на макросах, на сколько я пониимаю
источник

ŹR

Źmićer Rubinštejn in pro.elixir
(
defmodule GitHub do
 use Tesla

 plug Tesla.Middleware.BaseUrl, "https://api.github.com"
 plug Tesla.Middleware.Headers, [{"authorization", "token xyz"}]
 plug Tesla.Middleware.JSON

 def user_repos(login) do
   get("/user/" <> login <> "/repos")
 end
end
Это плохой пример. Plug забит в Либе plug
источник