function sumPrimes(num) { return arguments.length!==1 ? num>1 ? sumPrimes(num-1, arguments[1].filter(function(val){return val%num!==0;}).concat(num)) : arguments[1].reduce(function(a,b){return a+b;}) : num>1 ? sumPrimes(num-1, [num]) : 0; }