Size: a a a

2020 March 05

p

polunin.ai in rust_offtopic
что там два раза выхываешь ио, что там
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
после рефакторинга вышло больше код чем до этого
ну и разницы я не вижу все равно
Представь, что там не get_counter, а какой-то большой кусок кода
источник

p

polunin.ai in rust_offtopic
counter = || get_counter()
a = counter()
set_counter(a + 1)
b = counter()
источник

p

polunin.ai in rust_offtopic
это тоже самое, просто значки другие
источник

λ

λоλторт in rust_offtopic
Pavel
тоесть если программа завёрнута в ио, то она может использовать только подмножество языка?
Чего?
источник

p

polunin.ai in rust_offtopic
вместо () использовать <- и говорить что программа чудесным образом становится чистой это конечно бомба
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
counter = || get_counter()
a = counter()
set_counter(a + 1)
b = counter()
Тогда оберни ещё так же set_counter, и вместо того, чтобы их вызвать подряд обьедини их через композицию функций и вот у тебя будет какое-то простейщее псевдо IO.
источник

p

polunin.ai in rust_offtopic
Doge Shibu
Тогда оберни ещё так же set_counter, и вместо того, чтобы их вызвать подряд обьедини их через композицию функций и вот у тебя будет какое-то простейщее псевдо IO.
так ИО это должна какая-та штука извне делать
источник

p

polunin.ai in rust_offtopic
иначе это уде грязный код
источник

P

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

λ

λоλторт in rust_offtopic
Doge Shibu
Так зачем бросаться эпитетами, тема сложная, примеры для неё сложно подобрать, так что понятно, что у людей возникают вопросы.
Тут человек просто предвзят, да и к тому же наделён какой-то своей манятерминологией, которая никак не бьётся с CS. Кроме того, человек просто постоянно флеймит.
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
так ИО это должна какая-та штука извне делать
Ты вот так обьединил через композицию эти лямбды и теперь вместо () возвращаешь из фукнции эти лямбды.

Соотвественно теперь эта функция у тебя ссылочно-прозрачная.
источник

P

Pavel in rust_offtopic
а ограничить что происходит можно только ограничив интерфейс, которым программа может общаться с миром
источник

DS

Doge Shibu in rust_offtopic
Ты можешь её вызовы везде заменить на значение из этих скомпоженых лямбд
источник

p

polunin.ai in rust_offtopic
λоλторт
Неуч, если ты не знаешь что означают те или иные понятия, то никто их не может для тебя подменить
@ozkriff он уже второй раз
источник

λ

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

λ

λоλторт in rust_offtopic
polunin.ai
@ozkriff он уже второй раз
Господи, ты тут постоянно флеймишь, присуждаешь оппонентам реплики, которые они не говорили, а чуть что бежишь к озкрифу с криками, что тебя обидели
источник

p

polunin.ai in rust_offtopic
Doge Shibu
Ты вот так обьединил через композицию эти лямбды и теперь вместо () возвращаешь из фукнции эти лямбды.

Соотвественно теперь эта функция у тебя ссылочно-прозрачная.
так падажжи
допустим есть последовательность:
WORLD <- func()
здесь func() грязная
если я сделаю
WORLD <- wrapper() <- func()
то func() станет чистой?
источник

P

Pavel in rust_offtopic
λоλторт
Нечистоту невозможно пронаблюдать изнутри программы
тоесть если программа полагается на 10 разных вызовов rand(), то она получит 4 выбранное броском кубика?
источник

p

polunin.ai in rust_offtopic
λоλторт
Господи, ты тут постоянно флеймишь, присуждаешь оппонентам реплики, которые они не говорили, а чуть что бежишь к озкрифу с криками, что тебя обидели
даже бывший заключенный имеет право на защиту в будущем в суде)
источник