code: function partial(func) {
        if (func) {
          var arity = func[expando] ? func[expando][2] : func.length,
              partialArgs = slice(arguments, 1);
  
          arity -= partialArgs.length;
        }
        return createWrapper(func, PARTIAL_FLAG, arity, null, partialArgs);
      }
docs: Creates a function that, when called, invokes `func` with any additional
  `partial` arguments prepended to those provided to the new function. This
  method is similar to `_.bind` except it does **not** alter the `this` binding.
  
  Note: This method does not set the `length` property of partially applied
  functions.
  
  @static
  @memberOf _
  @category Functions
  @param {Function} func The function to partially apply arguments to.
  @param {...*} [args] Arguments to be partially applied.
  @returns {Function} Returns the new partially applied function.
  @example
  
  var greet = function(greeting, name) { return greeting + ' ' + name; };
  var hi = _.partial(greet, 'hi');
  hi('fred');
  // => 'hi fred'