我如何修改这个Haskell函数,这样我就不必导入Data.Bool并且只使用prelude函数?

我想在不导入 Data.Bool 的情况下仅使用 prelude 内置函数来构建下面的函数。我想将 bool 函数替换为其他东西,这样我就不必导入 Data.Bool 并且函数会打印与下面函数相同的输出。我该怎么做才能返回相同的输出?

increment :: [Bool] -> [Bool]
increment x = case x of
  [] -> [True]
  (y : ys) -> not y : bool id increment y ys

回答

boolfrom Data.Bool 和if语句做的事情完全一样,所以它可以作为一种实现方式:

    bool x y b = if b then y else x


以上是我如何修改这个Haskell函数,这样我就不必导入Data.Bool并且只使用prelude函数?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>