Function calling in maxima



It seems that when a function is called, that variable are accesable
using a function or macro
called arg i, where i is the arg number.  Can someone tell me where this
is defined, and
if I have a variable number of args, how the best way of accessing them
from lisp is?
Is a loop collecting the rest of the args a good idea or ar the args
collected already in a list somewhere?
Is there some documentation on this?
Dan Stanger