Size: a a a

2020 May 25

LL

Lama Lover in pro.elixir
А, меня туда не пустят
источник

LL

Lama Lover in pro.elixir
Lama Lover
А, меня туда не пустят
Потому что у меня в нике нет лямбды вместо L (
источник

VS

Vladimir Sekisov in pro.elixir
источник

PG

Pig Greenest in pro.elixir
Andrew Rudenko
Какая то смена топика. Магия есть, ленивые вычисления списков хаскель кеширует, во всяком случае в таких примитивных кейсах, proved
это не кеш, это оптимизации
источник

VS

Vladimir Sekisov in pro.elixir
Pig Greenest
это не кеш, это оптимизации
именно
источник

PG

Pig Greenest in pro.elixir
вычисления в хаскеле это граф, если компилятор видит что в вершинах одинаковые значения, то пытается их совместить, примерно так это работает
источник

AR

Andrew Rudenko in pro.elixir
Pig Greenest
это не кеш, это оптимизации
кеш это оптимизация по определению )
источник

AR

Andrew Rudenko in pro.elixir
Vladimir Sekisov
именно
что именно? ) цитирую
источник

AR

Andrew Rudenko in pro.elixir
Vladimir Sekisov
никакой тут магии нет,
тк fibs ленивый, то take
берет столько сколько нужнл
и каждый раз новое
.
источник

AR

Andrew Rudenko in pro.elixir
магия есть и take берет не "каждый раз новое"
источник

PG

Pig Greenest in pro.elixir
кеши нужны call by value языкам чтобы сэмулировать call by need/name
источник

VS

Vladimir Sekisov in pro.elixir
Andrew Rudenko
магия есть и take берет не "каждый раз новое"
https://wiki.haskell.org/GHC_optimisations#Graph_reduction
ваш раздел называется Common subexpression elimination
источник

МЛ

Михаил Лёсин... in pro.elixir
Я собрал простейшее приложение, которое через супервизор спавнит ranch и слушает порт.
Внимание, вопрос:
Почему для его запуска через mix run ему требуется опция
--no-halt
, а, например, когда запускаешь фениксовское приложение, то там она не требуется?
источник

AR

Andrew Rudenko in pro.elixir
Vladimir Sekisov
https://wiki.haskell.org/GHC_optimisations#Graph_reduction
ваш раздел называется Common subexpression elimination
именно там и рассказывают как работает эта "магия" и почему take не берет "каждый раз новое"
источник

AR

Andrew Rudenko in pro.elixir
> Each time a thunk is executed, the result (whatever it is) overwrites the thunk data. (It's possible that the result of evaluating a thunk is a new thunk of course.)

но вот на beam эту часть не особо реализуешь, как справедливо заметили в чате
источник

LL

Lama Lover in pro.elixir
Михаил Лёсин
Я собрал простейшее приложение, которое через супервизор спавнит ranch и слушает порт.
Внимание, вопрос:
Почему для его запуска через mix run ему требуется опция
--no-halt
, а, например, когда запускаешь фениксовское приложение, то там она не требуется?
А ты application создавал?
источник

МЛ

Михаил Лёсин... in pro.elixir
Lama Lover
А ты application создавал?
да, конечно
источник

LL

Lama Lover in pro.elixir
Михаил Лёсин
да, конечно
Видимо где-то бага в создании и вызове Application
https://stackoverflow.com/questions/30687781/how-to-run-elixir-application
источник

МЛ

Михаил Лёсин... in pro.elixir
можешь глянуть? там реально мало кода, но найти багу я не могу :(
https://github.com/mlesin/bang
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Михаил Лёсин
Я собрал простейшее приложение, которое через супервизор спавнит ranch и слушает порт.
Внимание, вопрос:
Почему для его запуска через mix run ему требуется опция
--no-halt
, а, например, когда запускаешь фениксовское приложение, то там она не требуется?
Конечно требуется и для феникса
источник