The 'apply' function causes 'function' to be evaluated with 'args' as the parameters, returning the result of 'function'. The 'args' argument must be a list.
> (defun my-add (x y)        ; define MY-ADD function
    (+ x y))
MY-ADD
> (my-add 1 2)               ; ordinary function call
3                            ; returns 3
> (apply #'my-add '(2 4))    ; symbol-function applied to argument-list
6                            ; returns 6
Note: When using 'apply' to cause the evaluation of a function,
you can use the 
See also: