Если у вас есть список типов IO [Double]
, я хочу, чтобы проверить, что список имеет желаемую длину.Haskell: проверьте длину IO [Double]
Я предполагаю, что мне нужно использовать функторы здесь, но я не понимаю, как это определить. Я пишу экземпляр-функтор функции длины? Или я пишу экземпляр-функтор типа данных, который использует функцию длины в fmap
?
Монады, функторы и т. Д. - все это для меня очень ново.
Пишешь экземпляр functor для «действия», в котором вы работаете: 'IO'. За исключением, конечно, вам фактически не нужно делать это самостоятельно, экземпляр уже определен в прелюдии; все, что вам осталось сделать, это _invoke_ этот экземпляр, используя 'fmap' один раз. – leftaroundabout
Спасибо за разъяснение! – asdfasdf1234