...で変数をバインディングした関数を返す関数の挙動メモ

...で変数をバインディングした時の挙動。私的メモ。

> BindedFunc <- function(func,...){
+   function(val){
+     func(val,...)
+   }
+ }
> MyFunc1 <- function(a,b){
+   a - b
+ }
> MyFunc2 <- function(a,b,c){
+   a * b - c
+ }
> BindedFunc(MyFunc1,b = 3)(1)
[1] -2
> BindedFunc(MyFunc1,a = 3)(1)
[1] 2
> BindedFunc(MyFunc2,b = 3, c = 5)(1)
[1] -2
> BindedFunc(MyFunc2,a = 3, c = 5)(1)
[1] -2
> BindedFunc(MyFunc2,a = 3, b = 5)(1)
[1] 14