Haskell:混淆 'foldl' 和带括号的运算符 (==)

Haskell: Confusion over 'foldl' with parenthesized operator (==)

以下是将 'foldl' 应用于此特定相等运算符的一些结果。我不明白它们 - 我认为每一行都应该 return 为真,因为无论列表的长度如何,"False == False == False ..." 都是真的。我是 Haskell.

的新手
Prelude> foldl (==) False [False]
True
Prelude> foldl (==) False [False,False,False]
True
Prelude> foldl (==) False [False,False,False,False]
False
Prelude> foldl (==) False [False,False,False,False,False]
True
Prelude> foldl (==) False [False,False,False,False,False,False]
False

我在尝试编写一个函数来测试函数列表在应用于公共参数(return 布尔值)时是否给出相同结果时发现了这些结果。

== 是二元运算符。当你写 False == False == False 时,你实际上是在写 (False == False) == False,也就是 True == False。也许现在你能明白是怎么回事了。

'Alexis King'

在评论中提交的答案