SWI-Prolog has a mechanism for easy incorporation of community
extensions. See the pack
landing page for details and available packs. This section documents
the built-in predicates to attach packs. Predicates for creating,
registering and installing packs are provided by the library
library(prolog_pack).
pack. The default for this search path is given below. See
file_search_path/2
for the app_data search path.
user:file_search_path(pack, app_data(pack)).
The predicate attach_packs/0 is called on startup of SWI-Prolog.
attach_packs(Directory,[]).
last). Using
first, new packages are added at the start.warning, which prints a warning and
ignores the new pack. Other options are keep, which is like warning
but operates silently and replace, which detaches the old
pack and attaches the new.
The predicate attach_packs/2 can be used to attach packages that are bundled with an application.