【发布时间】:2015-03-12 23:25:18
【问题描述】:
我想了解 Haskell foldr 的以下代码是如何评估的。
k x y = x
foldr k 1 [0..5]
结果是0,但是我不明白为什么是0?我想认为 x 是 1 任何列表中的元素是 y。谁能给我解释一下,好吗?我在网上搜索了它,但找不到任何有用的东西。
【问题讨论】:
-
提示:
foldr k 1 [0..5]扩展为0 `k` foldr k 1 [1..5] -
第一个函数参数接收列表元素。
-
我怀疑您可能会将
foldr与foldl混淆。
标签: haskell