Erlang中的函数属于高阶函数,即函数本身可以作为变量使用,这一点是函数数语言的基本特征之一,javascript、lua就从中借鉴了这种做法。函数不仅可以作为变量的值,而且还能够作为函数的返回值使用。
函数作为变量的值
- Double = fun(X) -> (2 * X) end.
- Double(3).
我们再看看,函数作为返回值(其实就是表达式的值)
- Multiple = fun(Times) -> (fun(X) -> X * Times end) end .
- Triple = Multiple(3).
- Triple(5).
阅读(1419) | 评论(0) | 转发(0) |