code: function compose (/* [func,] */) {
          var args = argsToArray(arguments);
          return function (arg0) {
              return args.reduceRight(function (value, arg){
                  return arg(value);
              }, arg0);
          };
      }
docs: Composes one or more functions into a new one.
  @function module:sjl.compose
  @returns {Function}