Вопросы по теме 'foldable'

Как я могу свернуть с состоянием в Haskell?
У меня есть простая функция (фактически используемая для некоторых задач проекта Эйлера). Он превращает список цифр в десятичное число. fromDigits :: [Int] -> Integer fromDigits [x] = toInteger x fromDigits (x:xs) = (toInteger x) * 10 ^ length...
1874 просмотров
schedule 21.01.2023

Складные и моноидные типы
Я пытаюсь написать функции, которые добавляют и умножают все элементы в списке, используя моноиды и Foldable. Я установил код, который, как мне кажется, работает: data Rose a = a :> [Rose a] deriving (Eq, Show) instance Functor Rose...
265 просмотров
schedule 24.09.2022

Невозможно реализовать складной экземпляр из-за неправильного типа
Я изучаю haskell и пытаюсь сделать красивую программу для печати. В какой-то момент я хочу получить длину строки (т.е. количество столбцов в этой строке). Чтобы иметь возможность сделать это с моим типом данных, я понимаю, что мне нужно реализовать...
70 просмотров
schedule 15.04.2022

Почему для mconcat требуется список, а не Foldable?
Глядя на определение Monoid , я заметил, что mconcat имеет следующее определение ( источник ): mconcat :: Monoid a => [a] -> a mconcat = foldr mappend mempty Почему подпись ограничивает это значение [a] , а не более общим...
252 просмотров
schedule 10.10.2022