Recall
Recursive Calling
Description
Recall
is used as a placeholder for the name of the function in which it is called. It allows the definition of recursive functions which still work after being renamed, see example below.
Usage
Recall(...)
Arguments
... | all the arguments to be passed. |
Note
Recall
will not work correctly when passed as a function argument, e.g. to the apply
family of functions.
See Also
local
for another way to write anonymous recursive functions.
Examples
## A trivial (but inefficient!) example: fib <- function(n) if(n<=2) { if(n>=0) 1 else 0 } else Recall(n-1) + Recall(n-2) fibonacci <- fib; rm(fib) ## renaming wouldn't work without Recall fibonacci(10) # 55
Copyright (©) 1999–2012 R Foundation for Statistical Computing.
Licensed under the GNU General Public License.