A list of declaration forms to be put into immediate and pervasive effect.
proclaim 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.
As proclaim involves parsing a list of lists of symbols and is intended to be used a few times per file at most, its implementation is not optimized for speed - it makes little sense to use it other than at top level.
For a top-level call to
declaim, 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
proclaim (so it is not a top-level call).
See Compiler control for a more extended description of the compiler optimize qualities.
proclaim 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.
LispWorks User Guide and Reference Manual - 13 Feb 2015