*modules*
∗modules∗ Variable
Value Type:
a list of strings.
Initial Value:
implementation-dependent.
Description:
The value of *modules* is a list of names of the modules that have been loaded into the current Lisp image.
Affected By:
provideSee Also:
provide, require
Notes:
The variable *modules* is deprecated.
provide, requireExpanded Reference: *modules*
Note: *modules* is deprecated along with provide and require.
Inspecting loaded modules
*modules* holds a list of strings naming modules that have been loaded into the current Lisp image.
(listp *modules*)
=> T
;; All elements are strings
(every #'stringp *modules*)
=> T
Modified by provide
The provide function adds a module name to *modules*.
(provide "MY-TEST-MODULE")
(member "MY-TEST-MODULE" *modules* :test #'string=)
;; => ("MY-TEST-MODULE" ...) ; implementation-dependent
Checked by require
The require function consults *modules* to determine whether a module needs to be loaded.
(provide "ALREADY-LOADED")
;; require sees it in *modules* and does nothing
(require "ALREADY-LOADED")
;; => NIL ; implementation-dependent