Lambda 表达式

Elm 具有 lambda 表达式或匿名函数的特殊语法:

\arguments -> returnedValue

例如,如 List.filter 所示:

> List.filter (\num -> num > 1) [1,2,3]
[2,3] : List number

更深入的是,反斜杠\用于标记 lambda 表达式的开头,箭头 -> 用于分隔函数体的参数。如果有更多参数,则它们用空格分隔:

normalFunction x y = x + y
-- is equivalent to
lambdaFunction = \x y -> x + y

> normalFunction 1 2
3 : number

> lambdaFunction 1 2
3 : number