A list of declaration forms to be put into immediate and pervasive effect.
is a function that parses the declarations in the list (usually a quoted list), and puts their semantics and advice into global effect. This can be useful when compiling a file for speedy execution, since a proclamation such as:
(proclaim '(optimize (speed 3) (space 0) (debug 0)))
:optimizeoption in defsystem to establish default optimization qualities for every member of the system, when compiled via compile-system.
Note: For a top-level call to
, optimize declarations are omitted from the compiled binary file. This deviates from the ANSI Common Lisp Standard but is useful because you are unlikely to want to change settings outside of that file. To make the global settings, you can call a function which calls
(so it is not a top-level call).
See Compiler control for a more extended description of the compiler optimize qualities.
involves parsing a list of lists of symbols and is intended to be used a few times per file, its implementation is not optimized for speed -- it makes little sense to use it other than at top level.