Next: Practical Difficulties, Previous: Block Compilation Declarations, Up: Block Compilation [Contents][Index]
The :block-compile
and :entry-points
arguments to
extensions:compile-from-stream
and compile-file
provide overall
control of block compilation, and allow block compilation without requiring
modification of the program source.
There are three possible values of the :block-compile
argument:
nil
Do no compile-time resolution of global function
names, not even for self-recursive calls. This inhibits any
start-block
declarations appearing in the file, allowing all
functions to be incrementally redefined.
t
Start compiling in block compilation mode. This is
mainly useful for block compiling small files that contain no
start-block
declarations. See also the :entry-points
argument.
:specified
Start compiling in form-at-a-time mode, but
exploit any start-block
declarations and compile
self-recursive calls as local calls. Normally :specified
is
the default for this argument (see block-compile-default
.)
The :entry-points
argument can be used in conjunction with
:block-compile
t
to specify the entry-points to a
block-compiled file. If not specified or nil
, all global functions
will be compiled as entry points. When :block-compile
is not
t
, this argument is ignored.
This variable determines the default value for the
:block-compile
argument to compile-file
and
compile-from-stream
. The initial value of this variable is
:specified
, but nil
is sometimes useful for totally
inhibiting block compilation.
Next: Practical Difficulties, Previous: Block Compilation Declarations, Up: Block Compilation [Contents][Index]