1
A
回答
3
1> Apply2 = fun(F, X) -> F(F(X)) end.
#Fun<erl_eval.12.82930912>
2> F = fun(Arg) -> Arg * 2 end.
#Fun<erl_eval.6.82930912>
3> Apply2(F, 10).
40
的问题是,我不知道这是否就是你的实际需要。在Haskell中,可以使用applyTwice f
作为函数,但不能用于Erlang(没有内置的partial
或curry
功能)。你也不能在Erlang做点类似于
applyTwice :: (a -> a) -> a -> a
applyTwice f = f . f
相关问题
- 1. 高阶函数
- 2. 高阶函数
- 3. Clojure中的高阶函数
- 4. haskell中的高阶函数
- 5. Scala中的高阶函数
- 6. Javascript中的高阶函数
- 7. 高阶javascript函数
- 8. 高阶函数法
- 9. 高阶函数javascripts
- 10. Haskell高阶函数
- 11. Python高阶函数
- 12. haskell:使用高阶函数的阶乘
- 13. 更高阶的reduce()函数
- 14. Haskell的高阶函数
- 15. 递归函数的高阶函数?
- 16. SML/NJ中的高阶函数
- 17. Python练习中的高阶函数
- 18. 了解Javascript中的高阶函数
- 19. C++中的高阶函数«filter»
- 20. 树遍历中的高阶函数
- 21. Common Lisp中的高阶函数语法
- 22. haskell中的高阶函数Error2
- 23. SML中高阶函数的签名
- 24. 了解PHP中的高阶函数
- 25. SML中的高阶函数作业
- 26. 方案中的简单高阶函数
- 27. 重构Scala中的高阶函数?
- 28. Java高阶多态函数
- 29. 高阶函数python初排
- 30. SML高阶函数类型?
我们在Erlang有咖喱形式吗? – coffeMug 2013-02-27 18:25:33
@Coffe_Mug没有语法糖来处理currying。你可以编写函数来返回函数的必要范围,但是......这很难写和读。 – 2013-02-27 18:27:53
@Coffe_Mug同样作为Erlang函数具有相同的和不同的* arity *(args的数量)是**不同的**函数,所以currying变得混乱。 – rvirding 2013-02-28 22:55:21