从闭包生成函数列表

时间:2015-09-30 03:36:09

标签: r functional-programming closures

error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/otool: 
can't open file: \
    /Users/taiyuanz/Library/Developer \
    /Xcode/DerivedData/RollingBall-gbmnblxxirswheemtfgncxsqywkj/Build/\
    Products/Debug-iphoneos/Ballman.app/Frameworks/MotionKit 
      (No such file or directory)

现在我希望' funlist'是方形函数,第二个是立方体函数。然而,它似乎只是重复了#cub;'

power <- function(exp) {
  function(x) {
    x ^ exp
  }
}
funlist <- lapply(2:3, power)

有没有办法以这种方式从闭包生成函数列表?或者围绕我可能想要以这种方式处理的问题的一般最佳实践?

1 个答案:

答案 0 :(得分:5)

它在3.2.0中改变行为的原因是news()文件中的这个公告:

  

高阶函数,例如apply函数和Reduce()   强制论证它们适用的函数以消除   惰性评估和变量捕获之间的不良交互   在关闭。这解决了PR#16093。