gpt4 book ai didi

haskell - 如何将 `[[Either String c]]` 转换为 `Either String [[c]]` ?

转载 作者:行者123 更新时间:2023-12-02 10:10:40 30 4
gpt4 key购买 nike

假设我有两个功能:

b2c :: B -> Either String C
a2bs :: A -> [[B]]

如何使用 b2ca2bs 创建以下 a2cs 函数,以便 [[ 中是否有任何 Left 值字符串 c]]字符串 [[c]] 应该是 Left 值?

a2cs :: A -> Either String [[C]]

最佳答案

我会这样写:

a2cs = traverse (traverse b2c) . a2bs

尽管这并不完全使用您建议的实现策略,即首先生成 [[Either String C]],然后将其展平为 Either String [[C]],它的优点是只需要一次遍历嵌套列表,而不是您的策略所需的两次。

关于haskell - 如何将 `[[Either String c]]` 转换为 `Either String [[c]]` ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53727865/

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