Established a specified declaration in the global environment.
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)))
means the rest of the file is compiled with these optimization levels in effect. (The other way of doing this is to make appropriate declarations in every function in the file).
LispWorks User Guide
for a more extended description.
(proclaim '(special *fred*))
(proclaim '(type single-float x y z))
(proclaim '(optimize (safety 0) (speed 3)))
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.
Remember to quote the argument list if it is a constant list.
(proclaim (special x))
attempts to call function
Exercise caution if you declare or proclaim variables to be special without regard to the naming convention that surrounds their names with asterisks.
LispWorks Reference Manual - 25 Jul 2003