fcn fs(f,s){s.apply(f)} fcn f1(n){n*2} fcn f2(n){n*n} var fsf1=fs.fp(f1), fsf2=fs.fp(f2); fsf1([0..3]); //-->L(0,2,4,6) fsf2([2..8,2]); //-->L(4,16,36,64)