Size: a a a

2020 March 05

G

Gymmasssorla in rust_offtopic
Pavel
тоесть если программа полагается на 10 разных вызовов rand(), то она получит 4 выбранное броском кубика?
ГПСЧ можно сделать чистым и чтобы он выдавал разные значения каждый раз
источник

p

polunin.ai in rust_offtopic
флейм только к одному чуваку который меня заебал
источник

P

Pavel in rust_offtopic
Gymmasssorla
ГПСЧ можно сделать чистым и чтобы он выдавал разные значения каждый раз
нельзя, у него мутабельный стейт
источник

p

polunin.ai in rust_offtopic
а про подмену понятий ты выдумал
источник

G

Gymmasssorla in rust_offtopic
Pavel
нельзя, у него мутабельный стейт
Можно и без мутабельного стейта, копируй
источник

p

polunin.ai in rust_offtopic
Gymmasssorla
ГПСЧ можно сделать чистым и чтобы он выдавал разные значения каждый раз
👍 ссылочная прозрачность
источник

λ

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

G

Gymmasssorla in rust_offtopic
ФП - это то, как мы пишем код, а не то, какой код мы можем выразить
источник

G

Gymmasssorla in rust_offtopic
polunin.ai
👍 ссылочная прозрачность
Да
источник

P

Pavel in rust_offtopic
Gymmasssorla
Можно и без мутабельного стейта, копируй
тоесть ты просто таскаешь этот стейт, точно так же, как и до этого
источник

P

Pavel in rust_offtopic
и у тебя может быть несколько инстансов стейта
источник

p

polunin.ai in rust_offtopic
Gymmasssorla
ГПСЧ можно сделать чистым и чтобы он выдавал разные значения каждый раз
ФПшеры: чистые функции это когда можно заменить вызов функции на ее результат
тоже ФПшеры:
источник

λ

λоλторт in rust_offtopic
Pavel
тоесть ты просто таскаешь этот стейт, точно так же, как и до этого
Этот стейт можно спрятать в контексте исполнения
источник

G

Gymmasssorla in rust_offtopic
Pavel
тоесть ты просто таскаешь этот стейт, точно так же, как и до этого
После rand другой ГПСЧ уже
источник

G

Gymmasssorla in rust_offtopic
λоλторт
Этот стейт можно спрятать в контексте исполнения
+
источник

P

Pavel in rust_offtopic
Gymmasssorla
После rand другой ГПСЧ уже
тот же, но с другим посевом
источник

p

polunin.ai in rust_offtopic
polunin.ai
ФПшеры: чистые функции это когда можно заменить вызов функции на ее результат
тоже ФПшеры:
👏
источник

G

Gymmasssorla in rust_offtopic
polunin.ai
ФПшеры: чистые функции это когда можно заменить вызов функции на ее результат
тоже ФПшеры:
Да, rand тоже чистая
источник

p

polunin.ai in rust_offtopic
Gymmasssorla
Да, rand тоже чистая
если функция с сигнатурой fn foo() -> i32, и которая возвращает разные значения каждый вызов чистая, то не вижу разницы между чистыми и нет функциями
источник

G

Gymmasssorla in rust_offtopic
Pavel
тот же, но с другим посевом
С другим посевом = другой
источник