calls the compiler to translate a lambda expression into a code vector containing an equivalent sequence of host specific machine code. A compiled function typically runs between 10 and 100 times faster. It is generally worth compiling the most frequently called Lisp functions in a large application during the development phase. The compiler detects a large number of programming errors, and the resulting code runs sufficiently faster to justify the compilation time, even during development.
also supports a LispWorks-specific extension allowing
to compile an arbitrary form. When
is not supplied and
is a list not of the form
compiles it as if by compile-file but without any file related processing and does it in-memory, so it has also the same effect as loading. This has a similar effect to compiling a definition in the LispWorks Editor tool, except that there is no source recording. Multiple forms can be compiled in one call by wrapping them with
is used this way it always returns
A compiled function object may be returned. Such compiled function objects are not printable (but see disassemble) other than as
(defun fn (...) ...) ; interpreted definition for fn
See declare for a list of the declarations that alter the behavior of the compiler.
LispWorks User Guide and Reference Manual - 21 Dec 2011