gpt4 book ai didi

haskell - 使用 mplus 作为函数列表

转载 作者:行者123 更新时间:2023-12-02 08:33:59 25 4
gpt4 key购买 nike

Using the Maybe Monad in “reverse” acfoltzer很好shows如何使用 mplus .我想产生类似的效果,但将函数列表作为参数:

tryFuncs :: [a -> Maybe b] -> a -> Maybe b
...

这样的电话

tryFuncs [f, g, h] x

将成为可能并做同样的事情

(f x) `mplus` (g x) `mplus` (h x)

如何才能做到这一点?

最佳答案

最简单的方法是将 msum(mplus 的列表版本)与 map 一起使用:

tryFuncs fs x = msum $ map ($ x) fs

关于haskell - 使用 mplus 作为函数列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23761538/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com