monads 相关问题

编程中的monad是可组合的计算描述。 Monads是Haskell等函数式编程语言中的重要构造。

我缺少了一些东西,这如何计算功率集?

因此,我的书给出了用于计算幂集的以下代码:filterM :: Monad m =>(a-> m Bool)-> [a]-> m [a] filterM p [] = return [] filterM p(x:xs)=做b

回答 1 投票 0

关于应用程序的多个参数不起作用?

因此,我试图了解单子,函子和应用程序。我创建了以下名为Maybe的重命名镜像匹配,有时称为。 (我这样做是为了了解这些事情)数据有时a = ...

回答 1 投票 1

如何启用应用验证以返回MonadThrow?

在我看来,Haskell中验证输入数据的一种惯用方式是通过一条应用链:mkMyData :: a-> b-> c->也许MyData mkMyData xyz = MyData ...

回答 1 投票 1

F#中的嵌套monad绑定

[试图将我的糊状头缠在单子上并绑住,以这个片段为例,纯粹是作为学习练习打开FSharpPlus打开FSharpPlus.Data让lowerBounds i =如果i> 10则...

回答 1 投票 0

更改使用模式匹配来应用绑定运算符的do表达式

LYAH,在随后的Monad中,更多显示此功能,solveRPN ::字符串->可能是doublesolveRPN st = do [结果]

回答 1 投票 2


将一元数值转换为多义中的IO

我正在尝试使用Haskell中的webdriver和polysemy构建自动化的功能测试套件。我已经尽力定义适当的效果并将其解释为Webdriver WD monad,但现在...

回答 1 投票 1

两个应用程序/单子程序都保持单曲面结构但以稍微不同的方式具有什么实际含义?

我已经阅读了此问答,但不了解类别理论部分。到目前为止,这是我的推理:当我查看类型F(a-> b)-> F a-> F b(a-> M b)-> M a-> M ba-&...

回答 1 投票 3

LYAH-链接Writer monad时了解有关“ tell”的注释

问题在底部以粗体显示。 LYAH给出了在书写器monad import Control.Monad.Writer上使用do表示法的示例logNumber :: Int-> Writer [String] Int logNumber x = writer ...

回答 1 投票 6

Haskell中“问”是什么意思,它与“问”功能有什么区别?

我不知道如何使用Ask函数,我知道如何使用Ask函数,但是我不知道它们是否相关。我正在读史蒂芬和我的《学习Haskell时我希望知道的事》 ...

回答 1 投票 -3

获取结果和状态,而不是来自状态Monad的状态

我有这段代码:runState(do {put 5; return'X'})1,结果是:('X',5)。我想在do块中提取结果-'X'和当前状态-5,然后对它们进行处理。但是...

回答 1 投票 1

关于函数monad

我对monad函数有些困惑。函数monad的定义如下:实例monad((->)r),其中返回x = \ _-> xh >> = f = \ w-> f(hw)w我试图...

回答 1 投票 10

是否可以在F#中以一种模式检查嵌套选项值?

假装我们具有以下类型:类型Message {文本:Option }类型Update {msg:Option }如何在一行中进行匹配,就像在C#中使用null -...

回答 1 投票 0

“问”在Haskell中是什么意思,它与问函数有什么区别? [关闭]

我不知道如何使用Ask函数,我知道如何使用Ask函数,但是我不知道它们是否相关。我正在读史蒂芬和我的《学习Haskell时我希望知道的事》 ...

回答 1 投票 -3

使用State Monad的树插入

我有一个树,并且插入操作的定义如“为您带来美好的Haskell!” :数据树a =空树|派生(显示,读取,等式)treeInsert的节点a(树a)(树a)::(Ord a)=> a-&...

回答 1 投票 0

Rust:如何使第一个Err或None上的迭代器方法链的出口短路?

考虑一连串的迭代器方法:.iter()。a()。b()。c(),其中a产生Option(或Result)类型的值。有没有办法让整个链在产生一个结果后立即返回None(或(Err(_))……)>

回答 1 投票 0

IO是免费的Monad吗?

[在Mark Seemann的博客文章和示例中,我第一次看到了免费的monad,作为构造纯代码和IO代码之间边界的一种方法。我的基本理解是,一个免费的monad可以让您...

回答 1 投票 0

在monad中“运行”是什么意思?

[遍历Haskell教科书上不同单子的章节,当作者从解释绑定和单子法则的细节转移到实际使用单子时,我一再迷失。突然,...

回答 3 投票 6

与多个系统进行交互时具有类似事务的行为

免责声明在以下文章中:action = Action / Func我有一个很长的方法来执行多个操作。每个操作都包装在一个try-catch中。如果特定操作失败,则必须在catch中...

回答 3 投票 1

均返回Vavr的链函数

我有一系列函数,它们接受一个Request对象并返回一个Vavr Either。如果任务完成,则Either将包含Result对象;如果任务需要...,则Either将包含修改的Request对象...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.