我如何修改这个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
THE END
二维码