传递lambda函数作为HOF的参数

时间:2016-11-11 20:22:27

标签: haskell

我有这样的功能

f d = foldl (\acc x -> acc ++ [distance] where distance = 1) d [1..3]

对于一些GHCI说:

error: parse error on input ‘where’

1 个答案:

答案 0 :(得分:7)

where子句适用于声明组,而不适用于表达式。您改为使用let

(\acc x -> let distance = 1 in acc ++ [distance])