Результаты поиска по запросу "monads"
Вот и ты.
родолжение моего последнего вопроса.Действие IO, вложенное в другие монады, не выполняющиесяРешением этого вопроса было удаление некоторых монад, и это позво...
точно так же, как для обычного
т ответ Я сделал на месте что-то, что немного похоже на «высший порядок»": лайк
, Благодарю.
н левого блока» Монад: unit(x) flatMap f == f(x)Но: (List(1) flatMap ((x: Int) => Some[Int](x))) == List(1) // true ((x: Int) => Some[Int](x))(1) == Some(1) // also trueТаким образом, закон о левой единице не распространяется на списки в scala. ...
, Вы не доказали это последнее утверждение. Более того - «если вы проверяете законы монад, вы легко можете сказать, что они тоже монады» - это никоим образом не является «доказательством». ОП, кажется, спрашивает конкретно о том, образуют ли обещания монаду, но вы не приложили усилий, чтобы доказать или даже неофициально продемонстрировать эту теорему.
чал функциональное программирование и встречал монады, функторы и аппликативы. Насколько я понимаю, применяются следующие определения: а) (A => B) => C [A] => C [B] | Функтор б) (A => C [B]) => C [A] => C [B] | монада в) (C [A => B]) => C [A] ...
вообще:
мотрел на похожие вопросы и ответы и не нашел ответа, который непосредственно касается моего вопроса. Я изо всех сил пытаюсь понять, как использоватьMaybe или жеEitherили жеMonads в сочетании с функциями трубопровода. Я хочу соединить функции ...
спасибо, что нашли время, чтобы объяснить в деталях!
монады, это моя первая рабочая (кроме тривиальной монады). Не стесняйтесь критиковать все в нем безжалостно. Меня особенно интересуют «более идиоматические» и «более элегантные» ответы. Эта монада подсчитывает количество выполненных ...
Не удается найти функцию, аналогичную liftM2
myLiftM2 :: Monad m => (a -> a1 -> m b) -> m a -> m a1 -> m b myLiftM2 f x y = x >>= (\r1 -> y >>= (\r2 -> f r1 r2))В liftM2 f возвращают b, а myLiftM2 возвращают m b
Haskell - «Последнее утверждение в конструкции do должно быть выражением»
Как сказано в заголовке:The last statement in a 'do' construct must be an expression значит? Я закончил свойdo блок сputStrLn как это показано в нескольких примерах, которые я видел, и я получаю ошибку. Код: main = do args <- getArgs file ...