Size: a a a

2020 March 06

P

Pavel in rust_offtopic
Gymmasssorla
Этот принцип работает во всех парадигмах, в том числе - в ФП
ну, как я вижу, все плюсы ссылочной прозрачности, что продают в этом чате работают только если его избегать
источник

G

Gymmasssorla in rust_offtopic
Вот модуль для парсинга запросов, вот - типы для нашего сервиса
источник

P

Pavel in rust_offtopic
Gymmasssorla
Вот модуль для парсинга запросов, вот - типы для нашего сервиса
а вот сюда я отправляю данные, когда хочу покласть их в бд, а вот отсюда я их беру. мне не важно, отправились ли они уже в бд, или просто забатчились, и пришли из бд, кеш-сервера или локального кеша, я просто их беру. без футур
источник

P

Pavel in rust_offtopic
единственно, когда мне нужны футуры, когда я хочу сделать что-то, что делается долго и что я могу распаралелить и угадай, что? обычно изменения стейта не важны снаружи их, только внутри, если они важны для их работы и я знаю, что когда-нибудь я получу эти данные, при этом мне не понадобится выполнять снова то, что они делали, мне нужны данные, не важно, сколько я раз их оттуда возьму, а если я хочу сайд-эффект, то его я опишу явно методом и буду заворачивать в асинк, если мне ненужен результат
источник

P

Pavel in rust_offtopic
лези футура: заставляет ждать квждый раз, чтоб получить данные.
функция: заставляет ждать каждый раз, чтоб получить данные.

зачем платить больше?
источник

G

Gymmasssorla in rust_offtopic
Ну все примеры выше, у @DogeShibu довольно показательный был. Вряд ли я замечу в большом проекте разницу между val и def, если дядя с другой стороны не сфокусирует моё внимание на конкретно этом коде и не спросит "А не различны ли они?"
источник

P

Pavel in rust_offtopic
Gymmasssorla
Ну все примеры выше, у @DogeShibu довольно показательный был. Вряд ли я замечу в большом проекте разницу между val и def, если дядя с другой стороны не сфокусирует моё внимание на конкретно этом коде и не спросит "А не различны ли они?"
это где 3 варианта и два одинаковых?
источник

G

Gymmasssorla in rust_offtopic
Переслано от Doge Shibu
Вот хороший пример, Future - не ссылочно прозрачный, стартует сразу, из-за этого получим данные проблемы в поведении:
https://imgur.com/S19Nr4a.png
источник

G

Gymmasssorla in rust_offtopic
Вот этот
источник

P

Pavel in rust_offtopic
тоесть, ты хочешь сказать, что ты нормально разбираешь причудливые операторы, но не видишь разницу между переменной и методом?
источник

P

Pavel in rust_offtopic
мб дело в том, что у тебя мусора в коде слишком много и тебе за всем не уследить?
источник

G

Gymmasssorla in rust_offtopic
Pavel
тоесть, ты хочешь сказать, что ты нормально разбираешь причудливые операторы, но не видишь разницу между переменной и методом?
Разница в том, что здесь твоё внимание сфокусировали на четырёх строчках и здоровенными буквами спросили "ARE THOSE 3 PROGRAMS DOING THE SAME?". В реальности никто такого делать не будет
источник

P

Pavel in rust_offtopic
Gymmasssorla
Разница в том, что здесь твоё внимание сфокусировали на четырёх строчках и здоровенными буквами спросили "ARE THOSE 3 PROGRAMS DOING THE SAME?". В реальности никто такого делать не будет
да, потому ты будешь глазками читать, что там написано, а не скипать к ответу
источник

G

Gymmasssorla in rust_offtopic
Я вчера уставшим вообще не сразу заметил разницу между вторым и третьим примером, намеренно их побуквенно сравнивал
источник

P

Pavel in rust_offtopic
Gymmasssorla
Я вчера уставшим вообще не сразу заметил разницу между вторым и третьим примером, намеренно их побуквенно сравнивал
расскажите мне ещё раз теперь, что скобочки мешают читать код
источник

G

Gymmasssorla in rust_offtopic
Pavel
расскажите мне ещё раз теперь, что скобочки мешают читать код
Отсутствие скобочек в Haskell исходит от того факта, что все функции в Haskell закаррированные. Иначе пришлось бы писать foo(1)(2)(3)(...)(...)
источник

P

Pavel in rust_offtopic
Gymmasssorla
Отсутствие скобочек в Haskell исходит от того факта, что все функции в Haskell закаррированные. Иначе пришлось бы писать foo(1)(2)(3)(...)(...)
это можно перенести на сахар к таплам, потому не обязательно пришлось бы
источник

P

Pavel in rust_offtopic
но в языке без скобочек у тебя мозг просто обязан цепляться за val/def, поскольку это источник большого количества информации
источник

P

Pavel in rust_offtopic
ну сам же реплайнул на неудобство
источник

G

Gymmasssorla in rust_offtopic
Pavel
но в языке без скобочек у тебя мозг просто обязан цепляться за val/def, поскольку это источник большого количества информации
По-другому: мой мозг не обязан цепляться за ненужную информацию
источник