我尝试使用反向功能编写功能。 我想简单地将列表反转为
reverse' :: [a] -> [a]
reverse' [] = []
reverse' (x:xs) = reverse' xs ++ [x]
但是喜欢 rev [a] =反向[a]
当我在haskell中使用反向功能时
Prelude>[1,2,3]
[3,2,1]
当我尝试使用时:
Prelude>rev [1,2,3]
我得到了: * 异常:2ost.hs:1:1-20:函数rev中的非详尽模式
请帮助,我假设这是一个愚蠢的错误。
好的,我知道: [a]由haskell作为1个元素列表,解决方案是:
rev a = reverse a
答案 0 :(得分:2)
听起来你只想要reverse
函数的较短别名。无论何时你想在Haskell中使用别名,你都可以非常轻松地创建它 - 只需要像rev = reverse
这样做。