Functions in ECL can be of two types: they are either compiled to
bytecodes or they have been compiled to machine code using a lisp to C
translator and a C compiler. To the first category belong function loaded
from lisp source files or entered at the toplevel. To the second category
belong all functions in the ECL core environment and functions in files
The output of
is one of the following:
a function object denoting the definition of the function
a list of the form
(macro . function-object) when
fun denotes a macro,
fun denotes a special form, such as block, if, etc.
ECL usually drops the source code of a function unless the global
si:*keep-definitions* was true when the
function was translated into bytecodes. Therefore, if you wish to use
defined functions, you should issue
t) at the beginning of your session.
In Table 4.1 we list all Common Lisp values related to the limits of functions.
Table 4.1. Function related constants