В чем назначение линз в Хаскеле? Прочитал статью на хабре, но там в основном про то, как с ними можно писать неплохой псевдоООП-код. А формальное определение Lense как-то неин...
А какова механика такого разделения? И зачем это в принципе может понадобиться? Допустим, у нас есть в хаскеле тип Hero с записями Health и Exp. Какая разница в записи Health ...
Приехали. Что это вообще может быть? Компилятор ошибся при парсинге цитат `inline-c`? Што делать?
Это будет выглядеть так: fmap compareKey readIn (readIn :: IO CInt) ?
Подскажите, как в этом коде убрать ошибки типов?
Где, кроме Хабра, можно найти рускоязычные статьи по сложному ФП, типа хаскельных линз, монадных трансформеров, машин?
Наложения имен одинаковых записей нельзя никак избежать?
А как применить Traversal' к многомерным спискам? Положим, есть _field :: [[Object]] Object { _param :: Int} Как можно из _field извлечь [[_param]]?
Как к функции типа a -> b -> c -> IO d применять IO-аргументы? >>= работает только с унарными. a, b, и c нужно как-то объединить?
В чем разница между runStateT и execStateT? Последний не пропускает эффекты IO?
Значения поднимаются в IO через return?
Даже для такой мелочи писать чистую функцию?
Этот код все равно невалиден. Почему?
Пишешь на языках типа C и asm ?