resident-function

$Revision: 5.0.2.2 $

Function

Package: EXCL

Arguments: (func)

Returns a fully loaded function corresponding to func, which must be a function object (not a symbol). If the function object is already fully loaded and a garbage collection has updated pointers, the function object is simply returned. If the function object is a stub (that is, it was libfasl loaded and no action to force complete loading has occured), the full definition (i.e. all the call-time info) is loaded and then the complete function object is returned.

As we said above, func must be a function object, not a symbol. Thus, to get the fully loaded version of the function named by the symbol foo, evaluate the following form:

(excl:resident-function #'foo)

Several actions besides calling excl:resident-function will cause a stub function to be fully loaded. These actions are:

  1. calling resident-function on the function object (as we have said);
  2. calling the function;
  3. calling excl:arglist to get the argument list;
  4. disassembling the function;
  5. compiling a call to the function; and
  6. writing the function as a constant to a fasl file.

See 3.5 Libfasl loading in loading.htm for more information on libfasl loading.

The general documentation description is in introduction.htm. The index is in index.htm.

Copyright (C) 1998-1999, Franz Inc., Berkeley, CA. All Rights Reserved.