code: function foldR(fn, startValue, list) {
        
     return list 
              ? fn(foldR(fn, startValue, tail(list)), head(list))
              : startValue
              ;
  }
docs: foldR implementation. Reduce a list down to a single value.
  
  @pram {Function} fn     (rightEval, curVal) -> result