Size: a a a

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

2021 November 24

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Кажется страуструп че-то писал про «кристаллы». Типа объект, у которого можно в определенном состоянии запросить определённый интерфейс (view). Как бы смотришь на него с определенного ракурса.
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
И возможность получить этот ракурс контролируется самим обьектом. Если он готов, у него состояние подходящее, то получишь.
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
doto сразу говорит, здесь у нас side effect
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
И типа так можно кодить контракты. Самый простой: нельзя пользоваться сразу обьектом, который создан, но  не инициализирован.
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
а cond-> намекает, что сделает это, если мы будем хорошо себя вести
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Ну и короче попробовал я как-то эту идею на очень простых кошечках. И такая мутотень получилась, что я подумал, что я  совсем дурак.
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Не знает кто-нить сервис «написать себе в прошлое»?
Щас же все есть в инете.
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
А вот мне не говорит.
Там же могут быть только set-теры
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
(doto 1 (Inc)) где тут сайдэфект?)
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
это и есть side effect
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
а этот код ничего и не сделает 😊
источник

ND

Nikita Domnickij in Clojure — русскоговорящее сообщество
Изменение стейта тоже сайдэфект
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
Ещё как делает, дебаг натрави на inc, увидишь.
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
А я думал, что я зануда…
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
мы против нуда 😊
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
Называется "тетрадка". Пишешь на странице: считаю правильным кодить так-то и так-то. Через год читаешь и сжигаешь, пока никто не увидел.
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Ок я надел трусы, считай, что пошёл навстречу.

Объясни мне, почему
(-> imutable-structure
   form-1
   …
   form-n)
Не намекает тебе на side effect

А вот
(doto mutable-object
     setFieldA
     …
     setFieldZ)
Непременно намекает.
источник

ST

Sergey Trofimov in Clojure — русскоговорящее сообщество
Не намекает тебе на side effect
в отношении меня это неверное утверждение

если это обращено к кому-то другому, то уточни получателя 😊
источник

ND

Nikita Domnickij in Clojure — русскоговорящее сообщество
а что тебе не намекает на сайдэфект в дуту?
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Т.е. тебе не только doto, но и все thread-macro кричат про side effects?
источник