The main problem with block compilation is that the compiler uses
large amounts of memory when it is block compiling. This places an
upper limit on the amount of code that can be block compiled as a
unit. To make best use of block compilation, it is necessary to
locate the parts of the program containing many internal calls, and
then add the appropriate
start-block declarations. When writing
new code, it is a good idea to put in block compilation declarations
from the very beginning, since writing block declarations correctly
requires accurate knowledge of the program’s function call structure.
If you want to initially develop code with full incremental
redefinition, you can compile with
block-compile-default set to
Note if a
defun appears in a non-null lexical environment, then
calls to it cannot be block compiled.
Unless files are very small, it is probably impractical to block compile
multiple files as a unit by specifying a list of files to
Semi-inline expansion (see semi-inline) provides another way to
extend block compilation across file boundaries.