Size: a a a

2021 April 09

V

V in pro.elixir
В том, чтобы притормозить producer
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Почему во всех других языках обходится без этого? Типа эрланг или питон
источник

Н

Николай in pro.elixir
Это бывает нужно когда-либо еще кроме случая когда происходит дисбаланс загрузки и не хватает ресурсов?
источник

AN

Alexey Novoselov in pro.elixir
потому что в эрланге переменные и атомы итак по-разному пишутся, а в эликсире одинаково
источник

ML

Maksim Lapshin in pro.elixir
Да ты че.

В эрланге как раз стройно, примитивно и понятно:

myfun() вызов функции по атому myfun

Myfun() вызов лямбды из переменной Myfun

В руби черти че неудобное. В питоне единое пространство имен переменных и функций и лямбд
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Мне нравится как в питоне
источник

ML

Maksim Lapshin in pro.elixir
Ну а в эликсире судя по всему myfun() превратится в myfun(), а myfun.() в Myfun()
источник

ML

Maksim Lapshin in pro.elixir
Пока тебе не приходится смотреть на обьект и пытаться выяснить в каком же файле определена эта функция
источник

ML

Maksim Lapshin in pro.elixir
В руби тоже этот кошмар есть. Какая-то функция, откуда взялась - непонятно
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Как myfun() в такой записи можно трактовать как атом - не ясно
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Как раз таки в эликсире было бы :myfun()
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Это бы ещё сбивало компилятор с толку
источник

ŹR

Źmićer Rubinštejn in pro.elixir
А так - вообще невозможно спутать
источник

V

V in pro.elixir
Не знаю, как понять вопрос. Горизонтальный дисбаланс? Вертикальный дисбаланс?
Простейшая схема: есть продюсер и консюмер. Проблема в том, что ты никогда не можешь быть уверен не мониторя процесс что возможностей консюмера достаточно чтобы переварить нагрузку. Очереди не спасают ( https://ferd.ca/queues-don-t-fix-overload.html ). Выход - либо поллинг консюмером продюсера, либо синхронный вызов, т.е. когда продюсер дожидается ответа от консюмера прежде чем сгенерировать следующее событие.
источник

LL

Lama Lover in pro.elixir
Ну в плане атом как имя функции
Типа вызов переменной от вызова функции таким образом отличается. Если бы они не отличались, тогда можно было бы создавать переменные типа func и они бы перекрывали в данном контексте функцию func. Видимо хотели чтобы было без этого
источник

Н

Николай in pro.elixir
😂.
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Компилятор бы говорил что перекрываешь.
источник

Н

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

ŹR

Źmićer Rubinštejn in pro.elixir
Хз короче, оно не стоит усложнения синтаксиса тем более в «функциональном языке»
источник

ŹR

Źmićer Rubinštejn in pro.elixir
В руби просто функция нифига не first class object
источник