Major Section: GUARD Most users can probably profit by avoiding
dealing with guards most of the time. If they seem to get in the
way, they can be ``turned off'' using the command nil; for more
about this, see set-guard-checking. For more about guards in
general, see guard. The guard on a function symbol is a formula
about the formals of the function. To see the guard on a
function, use the keyword command args. See args. To specify the
guard on a function at defun-time, use the xarg. See xargs.
Guards can be seen as having either of two roles: (a) they are a
specification device allowing you to characterize the kinds of
inputs a function ``should'' have, or (b) they are an efficiency
device allowing logically defined functions to be executed
directly in Common Lisp. Briefly: If the guards of a function
definition are ``verified'' (see verify-guards), then the
evaluation of a call of that function on arguments satisfying
its guard will have the following property: All subsequent
function calls during that eval