Size: a a a

2020 June 26

SP

Stanislav Popov in rust_offtopic
polunin.ai
Если ты на полном серьезе, то почитай что такое аутизм.
спасибо блядь, двух друзей с диагностированным РАС мне мало
источник

p

polunin.ai in rust_offtopic
Stanislav Popov
спасибо блядь, двух друзей с диагностированным РАС мне мало
У меня тоже были знакомые с аутизмом. И они совсем иначе себя вели.
источник

p

polunin.ai in rust_offtopic
А на чем этот чувак пишет?
источник

p

polunin.ai in rust_offtopic
На го?
источник

SP

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

SP

Stanislav Popov in rust_offtopic
polunin.ai
А на чем этот чувак пишет?
вобщем короче прочувствуй его боль. он хочет чего то очень упорядоченного и полного контроля причем нерационально, не понимая что тс даст ему больше контроля
источник

SP

Stanislav Popov in rust_offtopic
ну вот этот вот свой язык-подмножество жс
источник

SP

Stanislav Popov in rust_offtopic
у аутистов большой страх что если чтото пойдет не по плану им пизда
источник

AZ

Alex Zhukovsky in rust_offtopic
Stanislav Popov
как говно может произойти с ио монадой? да очень просто. снаружи монадки есть глобалка в виде файла. по ходу конфигурации программы эта монадка дрочится. нарушается последовательность и у тебя например меняется вторая строчка файла которая была не второй и все
Ну во-первых функция остается чистой (снаружи её могут люди композировать и если они не захотят, то с файлом ничего не будет)
во-вторых ИО действительно слишком мощная монада, поэтому обычно пользуется специализированными попроще, а ИО только в мейне и есть
источник

SP

Stanislav Popov in rust_offtopic
всмысле функция останется чистой? если функция дописывает чтото в файл если ты вызовешь её два раза то в файл запишется два раза, не ?
источник

SP

Stanislav Popov in rust_offtopic
опять пошли эти сценарии "мы можем подсунуть вместо ои мок, и функции которые просят явного ио это сьедят"
источник

AZ

Alex Zhukovsky in rust_offtopic
Stanislav Popov
всмысле функция останется чистой? если функция дописывает чтото в файл если ты вызовешь её два раза то в файл запишется два раза, не ?
нет
источник

SP

Stanislav Popov in rust_offtopic
а почему нет? это уже интригует
источник

AZ

Alex Zhukovsky in rust_offtopic
ну вот смотри:
writeInFile :: String -> IO ()

...

let x = writeInFile "Hello"
let y = writeInFile "Hello"
...
источник

AZ

Alex Zhukovsky in rust_offtopic
вот два вызова функции
источник

AZ

Alex Zhukovsky in rust_offtopic
(да, в ленивом хаскелле реального вызова нет, через банг-паттерны можешь сделать, в идрисе реально будет два вызова, но для нас это ничего не меняет)
источник

SP

Stanislav Popov in rust_offtopic
так это не вызов. ты каррируешь просто чтобы её вызвали потом
источник

AZ

Alex Zhukovsky in rust_offtopic
Stanislav Popov
так это не вызов. ты каррируешь просто чтобы её вызвали потом
ну это на самом деле вызов
источник

SP

Stanislav Popov in rust_offtopic
ты давай как положено: x >== y
источник

AZ

Alex Zhukovsky in rust_offtopic
посмотрим такой пример на расте:

fn writeInFile() -> IO<()> {
  println!("AHAHAHA");
  IO::pure(());
}
источник