编程中的monad是可组合的计算描述。 Monads是Haskell等函数式编程语言中的重要构造。
为潜在的模糊问题标题道歉 - 我不确定如何表达它,因为我对问题的理解很差。基本上,我如何进行以下编译? ...
在许多情况下,我不清楚将两个monad与变压器组合而不是使用两个单独的monad可以获得什么。显然,使用两个单独的monad是麻烦,可以......
我倾向于使用变量来提高可读性,但是当谈到monad时,我提出了我自己的约定,以明确我的变量包含在(可能是堆栈)monad(s)def getUser(id:...
我正在关注Philip Wadler关于Monads的论文(函数式编程的本质),但是我没有使用像unitM或bindM这样的函数,而是试图让Monad M成为Haskell的一个实例......
我想在Haskell中创建自己的monad,并让Haskell像任何其他内置的monad一样对待它。例如,这里是用于创建更新某些全局状态变量的monad的代码...
为了简化我的问题,我将从学术范例开始,即ackermann函数。我使用以下递归的朴素实现:def a(m:BigInt,n:BigInt):BigInt = {if(m == 0)...
monad定律传统上用>> =和纯来描述:纯a >> = k = kam >> = pure = mm >> =(\ x - > kx >> = h)=(m >> = k )>> = h然而,......
目前我正在研究函数式编程,我怀疑何时应该使用monad ...是否有一些规则可以用来知道何时使用它?
Haskell中有效的编程意味着什么?它基本上只是说使用applicative functor和简洁的函数?
List monad返回x = [x]。那么为什么在下面的例子中结果不是[([“a”,“b”],[2,3])]? >对a b =做{x对[“a”,“b”] [2,3] [(“......
如何为continuation monad实现stack-safe chainRec操作符?
我目前正在试验延续monad。 Cont实际上在Javascript中很有用,因为它从回调模式中抽象出来。当我们处理monadic递归时,总会有......
在函数式编程中,是否有一种干净的方法可以对某些数据执行许多操作,而无需将数据显式传递到每个函数中?
假设我有一些函数可以对某些数据执行业务逻辑:function addEmployees(data,numberOfNewEmployees){//业务逻辑... data.employeeCount + = ...
我有一个函数步骤:: Int - > State Int Int step n = get >> = \ x - > put(x`div`n)>> return(x`mod`n)λ> runState(步骤25)41 (16,1)如何运行一系列步骤,......
假设我想为UTCTime创建一个包装器:数据CustomDateStamp = CustomDateStamp {stampValue :: UTCTime}派生(Show,Eq,Ord,Typeable)现在说我想构建一个...