Size: a a a

Clojure — русскоговорящее сообщество

2021 February 07

AU

Alexander Ushanov in Clojure — русскоговорящее сообщество
Переслано от Aleksey @cheatex
Они не зависят от внешнего состояния. Просто не все их входные параметры перечислены в сигнатуре.
источник

AU

Alexander Ushanov in Clojure — русскоговорящее сообщество
Ну на не совсем функционально, но а) это вопрос удобства б) ты подписываешься на части некоего скоординированного убер-стейта а не какие-то случайные вещи, так что в каком-то смысле подписка аналогична прокидыванию стейта всего приложения и выковыриванию из него нужных данных вручную
источник

AU

Alexander Ushanov in Clojure — русскоговорящее сообщество
Иван Федоров
вопрос. если создать подписку так


(def sub1 (rf/subscribe [:s1]))

(defn comp…)


но не дереференсить её.
она будет вычисляться?
я не уверен что нет. Хотя может и не будет.
Но если её положить в функу – уже “точно не должна”
Надо смотреть в сторону реагента. Мне кажется будет вычисляется ибо subscribe уже создаёт reagent/reaction.
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Alexander Ushanov
Ну вот мне понравилась мысль Алексея. Наверное действительно суть в том, что все параметры определены на момента входа в функцию и не меняются в процессе ее вычисления.
Ну это как и любая функция в любом языке если нет доступа из нескольких тредов
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
даже для метода мутабельного объекта это справедливо
источник

AU

Alexander Ushanov in Clojure — русскоговорящее сообщество
Anton Chikin
Ну это как и любая функция в любом языке если нет доступа из нескольких тредов
Не только из тредов, но и вообще из вне, как с каким-то gpio, к примеру
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
this по сути то же самое
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
в смысле того что не все входные параметры перечислены в сигнатуре
источник

AU

Alexander Ushanov in Clojure — русскоговорящее сообщество
Anton Chikin
в смысле того что не все входные параметры перечислены в сигнатуре
Тут важнее вторая часть, мне кажется, если я правильно понимаю, результат подписки не может поменяться в процессе вычисления функции, она просто будет вычислена повторно
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Alexander Ushanov
Тут важнее вторая часть, мне кажется, если я правильно понимаю, результат подписки не может поменяться в процессе вычисления функции, она просто будет вычислена повторно
я не понимаю что это дает
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Alexander Ushanov
Тут важнее вторая часть, мне кажется, если я правильно понимаю, результат подписки не может поменяться в процессе вычисления функции, она просто будет вычислена повторно
ну как и любое значение в кложе
источник

AU

Alexander Ushanov in Clojure — русскоговорящее сообщество
Ну дёргая gpio в функции два раза ты можешь получить все что угодно, а там поведение более предсказуемое выходит
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Alexander Ushanov
Ну дёргая gpio в функции два раза ты можешь получить все что угодно, а там поведение более предсказуемое выходит
Ну результаты-то в разных переменных будут записаны
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
У тебя просто будет два значения
источник

AU

Alexander Ushanov in Clojure — русскоговорящее сообщество
надо осмыслить, у меня пока какие-то ассоциации с квантовой физикой и волновыми функциями)
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Главное - до коллапса не доводи!
источник

A

Aleksey @cheatex in Clojure — русскоговорящее сообщество
Anton Chikin
в смысле того что не все входные параметры перечислены в сигнатуре
ну в рефремовом компоненте стейт ни прочитать ни поменять нельзя. можно попросить позвать тебя когда он поменяется и попросить поменять его.
источник

AU

Alexander Ushanov in Clojure — русскоговорящее сообщество
Damir Farazetdinov
Главное - до коллапса не доводи!
ну так так и выходит, что либо у тебя много волновых функий (IO), каждая из которых коллапсирует, когда ты к ней обращаешься, а в случае с подписками все определено на момент входа в функцию, ну по крайней мере, я так это себе представляю
источник
2021 February 08

OV

Onyma Velesov in Clojure — русскоговорящее сообщество
13
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
уважаемые! а кто-нибуь вот это пробовал?
https://github.com/AppsFlyer/donkey
источник