All Manuals > LispWorks Delivery User Guide > 9 Delivery and Internal Systems > 9.9 Keeping packages and symbols in the application


9.9.1 Ensuring that packages are kept

Your application may rely upon certain system packages that Delivery deletes or smashes by default.

You can protect these packages with :packages-to-keep . All packages in the list passed with this keyword are kept in the delivered image, regardless of the state of the :smash-packages and :delete-packages keywords. If you pass :packages-to-keep :all , then the two variables are set to nil .

Note: COMMON-LISP is the package your application is most likely to rely on, and it is also very large. Keeping it has a very noticeable effect on the size of the application. However, if your application uses read or load , it invites the possibility of reading arbitrary code, and so COMMON-LISP must be kept.

See also Coping with intern and find-symbol at runtime.

LispWorks Delivery User Guide - 13 Dec 2011