我们可以在Haskell中使用lambda函数中的“where”吗?

时间:2016-09-18 15:45:15

标签: haskell lambda

我想知道我们是否可以在匿名函数中使用或不使用。我试着这样做:

\x -> k where k = x+1

但这会在'where'上给出一个解析错误。

1 个答案:

答案 0 :(得分:5)

您可以在lambda表达式中的某些表达式中使用where,但不能只在内部使用。

f = \x ->
  case x of
    Nothing -> 12
    Just y -> z * 2
      where z = y + 7