Modify Macro funcallf function-form place &rest other-arg-formsresults

funcallf updates a place by calling a function with the old value of the place as first argument, possibly along with other arguments. The result of the function is stored into the place. Specifically:

  1. Evaluate function-form to produce function;
  2. Evaluate the subforms of place, then read the primary value of place to produce old-place-value;
  3. Evaluate each other-arg-form normally to produce other-arg;
  4. Store into the place the primary value returned by calling function with old-place-value and other-args as arguments. If place has more than one store variable, the remaining such variables are bound to nil prior to evaluation of the storing form.
Modify Macro applyf function place &rest other-argsresults

Same as funcallf except apply is used to call the function with the primary value of place and other-args.