LispWorks Delivery User Guide > 9 Delivery and Internal Systems


9.6 Modules

Part of the system is implemented using load on demand modules that are loaded automatically when a function is called. Most of these modules are only useful during development, so are not needed in the application. However, in some cases the application may need some module.

You can obtain the list of loaded modules by entering

:bug-form nil

in a Listener. This prints, inter alia, the list of loaded modules.

To obtain a minimal list of modules, follow these steps:

  1. Start a fresh LispWorks image, making sure it does not load any irrelevant code (for example in your .lispworks init file):

    C:\Program Files\LispWorks> lispworks-6-0-0-x86-win32.exe -init -
  2. Load the application and run it.
  3. Exercise the application, to ensure that any entry points for load on demand modules are called.
  4. Enter :bug-form nil in a Listener. The list of loaded modules should include only modules that your application needs.

Once you know a module is required in your application, you need to load it before delivering, by calling require :

(require module-name )

Add the call to require to your delivery script.

Note: require is case-sensitive, and generally module-name is lowercase for LispWorks modules.

LispWorks Delivery User Guide - 22 Dec 2009