[R] Reducing a list of functions by composition fails
Mog
mogunus at gmail.com
Thu Aug 5 22:31:44 CEST 2010
Hi All,
I'd like to be able to specify the ordered composition of several
functions. So I defined compose:
compose <- function(f,g){
function(x){f(g(x))}
}
and some simple test functions:
plus2 <- function(x){x+2}
plus3 <- function(x){x+3}
plus4 <- function(x){x+4}
> (compose(plus2,compose(plus3,plus4)))(3)
[1] 12
Works fine. But trying to reduce a list of functions by compose fails:
> Reduce(compose,list(plus2,plus3,plus4),right=TRUE)(3)
Error: evaluation nested too deeply: infinite recursion / options(expressions=)?
As far as I can tell, that reduction should be the same as my call
above. What am I doing wrong?
Thanks very much!
More information about the R-help
mailing list