Parameter | Details |
---|---|
name | some (unevaluated) symbol which names a function |
symbol | a symbol |
function | a function which is to be called |
args... | zero or more arguments (not a list of arguments) |
arglist | a list containing arguments to be passed to a function |
arg1, arg2, ..., argn | each is a single argument to be passed to a function |
When talking about Lisp-like languages there is a common distinction between what is known as a Lisp-1 and a Lisp-2. In a Lisp-1, symbols only have a value and if a symbol refers to a function then the value of that symbol will be that function. In a Lisp-2, symbols can have separate associated values and functions and so a special form is required to refer to the function stored in a symbol instead of the value.
Common Lisp is basically a Lisp-2 however there are in fact more than 2 namespaces (things that symbols can refer to) -- symbols can refer to values, functions, types and tags, for example.