Size: a a a

2021 March 01

LL

Lama Lover in pro.elixir
Alex Bubnov
о, я тут посмотрел во что компилируется for.
  defmodule T do
   def f() do
     for {_, v} = e <- [a: 1, b: 2], v != nil, into: %{}, do: e
   end
 end


-module('Elixir.Tele2.T').

f() ->
 maps:from_list(lists:reverse('Elixir.Enum':reduce(
   [{a, 1}, {b, 2}], [],
   fun
     ({_, _v@1} = _e@1, _@1) ->
       case _v@1 /= nil of
         true -> [_e@1 | _@1];
         false -> _@1
       end;
     (_, _@1) -> _@1
   end))).


вот и на кой черт он нужен, если он просто в reduce разворачивается?..
Да, for совсем не оптимизирован
источник

AB

Alex Bubnov in pro.elixir
Alex Bubnov
list comprehension в эрланге
(если память не изменяет)
источник

AB

Alex Bubnov in pro.elixir
Lama Lover
Да, for совсем не оптимизирован
я думал, что он оптимизированный и в этом его польза.
а ее нет, оказывается =(
источник

AB

Alex Bubnov in pro.elixir
Alex Bubnov
list comprehension в эрланге
да, они разворачиваются в функцию http://tryerl.seriyps.ru/#id=07b4
источник

AB

Alex Bubnov in pro.elixir
Alex Bubnov
я думал, что он оптимизированный и в этом его польза.
а ее нет, оказывается =(
еще одна причина, по которой я удалялся из этого чята - не постить вот такое и поменьше об этом думать
источник

AN

Alexey Novoselov in pro.elixir
Alex Bubnov
я думал, что он оптимизированный и в этом его польза.
а ее нет, оказывается =(
да Валиму в большинстве случаев похер на опимизацию, главное фич побольше, но мр с оптимизированными вариантами реализаций приветствуются от сообщества
источник

AB

Alex Bubnov in pro.elixir
были б те фичи еще осмысленные
источник

AB

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

B

Bogdan in pro.elixir
Для ноды есть супервизоры вроде эликсировских?
источник

AB

Alex Bubnov in pro.elixir
Bogdan
Для ноды есть супервизоры вроде эликсировских?
kubernetes?
источник

B

Bogdan in pro.elixir
Alex Bubnov
kubernetes?
ну не это уж слишком)) нужно что-то простое для очень очень  маленького вебсервера. Но чтобы он перезапускался если упаедет. Я вот думаю если из catch его перезапускать рекурсивно это не будет очень плохо?
источник

A

Andrey in pro.elixir
Bogdan
Для ноды есть супервизоры вроде эликсировских?
PM2 подойдёт?
источник

B

Bogdan in pro.elixir
Andrey
PM2 подойдёт?
сейчас посмотрю, спасибо
источник

B

Bogdan in pro.elixir
Наверное вынесу его просто в отдельный сервис на Эликсире.
источник

M

MrFlorius in pro.elixir
Alex Bubnov
list comprehension в эрланге
А чем они лучше редьюса в плане оптимизации
источник
2021 March 02

AB

Alex Bubnov in pro.elixir
MrFlorius
А чем они лучше редьюса в плане оптимизации
Меньше межмодульных вызовов, например.
источник

AN

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

AB

Alex Bubnov in pro.elixir
Alexey Novoselov
так инлайнится же компилятором вроде
Я совсем не уверен, но проверить сейчас не смогу всё же
источник

AN

Alexey Novoselov in pro.elixir
а вообще подход do it work -> do it right -> do it fast охуенен, не даром эликсир быстро развивается и набирает популярность
источник

AB

Alex Bubnov in pro.elixir
В разработке языков и даже фреймворков плохо работает первый переход
источник