我正在尝试实现一个比较 2 个列表以查看它们是否相同的函数。语法对我来说很好:
compare :: String -> String -> Bool
compare [] [] = True -- error here
compare (x,xs) (y,ys) = if x == y
then compare xs ys
else False
但我在上面标记的行中不断收到此错误:
输入中的语法错误(意外的 `=')
当我尝试将 '=' 替换为 '->' 时,它运行良好,但在下一行中给出了相同的错误。所以我做了同样的事情:
compare :: String -> String -> Bool
compare [] [] -> True
compare (x,xs) (y,ys) -> if x == y -- new error here
then compare xs ys
else False
但我得到了一个不同的错误:
类型签名中的语法错误(意外的关键字“if”)
现在我真的不知道发生了什么。