Size: a a a

2020 June 21

t

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

AZ

Alex Zhukovsky in rust_offtopic
Stanislav Popov
у тебя есть функция взятия времени под ио. ты не сможешь подсунуть такое ио чтобы время бралось одно и то же. или файлики были одни и те же
Напиши ИО для раста, сразу расставишь все по местам
источник

t

toriningen in rust_offtopic
я могу подсунуть любую реализацию ио, в том числе такую, которая возвращает любое время
источник

t

toriningen in rust_offtopic
потому что "подсунуть реализацию ио" нужно читать как "подсунуть монаду Х", т.к. к ио это уже не будет иметь отношения. ио - вполне конкретная, пусть и обычная монада
источник

A

Aleksandr Khristenko in rust_offtopic
toriningen
я могу подсунуть любую реализацию ио, в том числе такую, которая возвращает любое время
если у тебя функция должна выполнятся именно в IO монаде, как ты другую туда подсунешь?
источник

AZ

Alex Zhukovsky in rust_offtopic
Stanislav Popov
у тебя есть функция взятия времени под ио. ты не сможешь подсунуть такое ио чтобы время бралось одно и то же. или файлики были одни и те же
я не понимаю о чем ты:

sameTime :: IO Time
sameTime = pure $ Time 2020 01 01 10 00

Вот
функция из под ИО возвращает всегда одно и то же время
источник

AZ

Alex Zhukovsky in rust_offtopic
toriningen
я могу подсунуть любую реализацию ио, в том числе такую, которая возвращает любое время
речь рпо IO а не MonadIO полагаю
источник

SP

Stanislav Popov in rust_offtopic
Alex Zhukovsky
я не понимаю о чем ты:

sameTime :: IO Time
sameTime = pure $ Time 2020 01 01 10 00

Вот
функция из под ИО возвращает всегда одно и то же время
но есть код который делает getCurrentTime
источник

AZ

Alex Zhukovsky in rust_offtopic
Stanislav Popov
но есть код который делает getCurrentTime
но ведь этот getCurrentTime как-то реализован, нет?
источник

AZ

Alex Zhukovsky in rust_offtopic
как ты собираешься подменять его?
источник

SP

Stanislav Popov in rust_offtopic
я не знаю
источник

SP

Stanislav Popov in rust_offtopic
а как хаскелисты предлагают его подменять чтобы получить чистоту?
источник

AZ

Alex Zhukovsky in rust_offtopic
тебе не надо ничего подменять чтобы получить чистоту
источник

t

toriningen in rust_offtopic
"получить чистоту". но она изначально есть.
источник

SP

Stanislav Popov in rust_offtopic
лан спрашиваю еще раз
источник

AZ

Alex Zhukovsky in rust_offtopic
ИО можно считать как ленвый Id (если мы про энергичные языки говорим)
источник

t

toriningen in rust_offtopic
IO не "выполняет сайдэффекты". когда ты выполняешь любую функцию, которая возвращает IO, ты не выполняешь никаких эффектфульных операций
источник

SP

Stanislav Popov in rust_offtopic
можно ли взять такой ио который бы давал одно и то же время если скармливать его в getCurrentTime ?
источник

AZ

Alex Zhukovsky in rust_offtopic
Stanislav Popov
можно ли взять такой ио который бы давал одно и то же время если скармливать его в getCurrentTime ?
что такое "такой ИО"? ИО это конкретная структура
источник

AZ

Alex Zhukovsky in rust_offtopic
которую возвращает getCurrentTime
источник