Size: a a a

2020 February 08

AZ

Alex Zhukovsky in rust_offtopic
red75prime
Ну я и говорю, комбинаторы забыл
каокй? sequence нужен просто чтобы из списка ио получить ио списка
источник

AZ

Alex Zhukovsky in rust_offtopic
но ты можешь руками пройтись в forM
источник

r

red75prime in rust_offtopic
Если ещё, скажем, State monad добавить?
источник

AZ

Alex Zhukovsky in rust_offtopic
red75prime
Если ещё, скажем, State monad добавить?
ну мне лень немного сигнатуры писать
источник

AZ

Alex Zhukovsky in rust_offtopic
но вот я писал для state + Writer: https://repl.it/@Pzixel/GlaringSarcasticPoints
источник

r

red75prime in rust_offtopic
Или как будет лучше после каждого введённого числа выводить их сумму?
источник

AZ

Alex Zhukovsky in rust_offtopic
в частности

go (Leaf a) = do
 tell 1
 s <- get
источник

AZ

Alex Zhukovsky in rust_offtopic
tell это операция логгирования в Writer, а get это операция получения State
источник

AZ

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

r

red75prime in rust_offtopic
А где суммирование делается?
источник

AZ

Alex Zhukovsky in rust_offtopic
getSum
источник

AZ

Alex Zhukovsky in rust_offtopic
каждый лист единичку пишет, getSum их суммирует
источник

AZ

Alex Zhukovsky in rust_offtopic
точнее их суммирует Sum, а getSum это способ прочитать что он насуммировал
источник

P

Pavel in rust_offtopic
Alex Zhukovsky
и? в сишарпе я напишу

var a = await some
var b = await a.Foo();
return await b.Bar()
в том, что ты читаешь слева направо, а не мерзкой спиралью сишных указателей
источник

AZ

Alex Zhukovsky in rust_offtopic
соответственно чтобы добавить список/ио/... нужно будет в матрешку добавить еще элемент
источник

AZ

Alex Zhukovsky in rust_offtopic
Но это обучающий пример, вместо явных типов ты потом скорее сделаешь констрейнт
источник

AZ

Alex Zhukovsky in rust_offtopic
(MonadState Integer m, MonadWriter (Sum Integer) m) => ...
источник

AZ

Alex Zhukovsky in rust_offtopic
то есть вермишели из 547 вложенных типов делать не придется
источник

r

red75prime in rust_offtopic
Мне нужны хинты, чтобы быстро понимать код. Единообразный do над матрёшкой из монад - это не моё.
источник

AZ

Alex Zhukovsky in rust_offtopic
red75prime
Мне нужны хинты, чтобы быстро понимать код. Единообразный do над матрёшкой из монад - это не моё.
источник