1\chapter{The SWI-Prolog library}		\label{sec:libpl}
2
3This chapter documents the SWI-Prolog library.  As SWI-Prolog provides
4auto-loading, there is little difference between library predicates
5and built-in predicates.  Part of the library is therefore documented
6in the rest of the manual.  Library predicates differ from built-in
7predicates in the following ways:
8
9\begin{itemize}
10    \item User definition of a built-in leads to a permission error,
11          while using the name of a library predicate is allowed.
12
13    \item If autoloading is disabled explicitly or because trapping
14          unknown predicates is disabled (see unknown/2 and
15          current_prolog_flag/2), library predicates must be loaded
16	  explicitly.
17
18    \item Using libraries reduces the footprint of applications that
19          don't need them.
20\end{itemize}
21
22\begin{quote}\em
23The documentation of the library has just started. Material from the
24standard packages should be moved here, some material from other parts
25of the manual should be moved too and various libraries are not
26documented at all.
27\end{quote}
28
29\input{aggregate}
30\input{ansiterm}
31\input{apply}
32\input{assoc}
33\input{broadcast}
34\input{charsio}
35\input{check}
36\input{clpb}
37\input{clpfd}
38\input{clpqr}
39\input{csv}
40\input{dcgbasics}
41\input{dcghighorder}
42\input{debug}
43\input{dicts}
44\input{error}
45\input{gensym}
46\input{intercept}
47\input{iostream}
48\input{listing}
49\input{lists}
50\input{main}
51\input{nbset}
52\input{wwwbrowser}
53\input{occurs}
54\input{option}
55\input{optparse}
56\input{ordsets}
57\input{pairs}
58\input{persistency}
59\input{pio}
60\input{predicateoptions}
61\input{prologjiti}
62\input{prologpack}
63\input{prologxref}
64\input{quasiquotations}
65\input{random}
66\input{readutil}
67\input{record}
68\input{registry}
69\input{settings}
70\InputIfFileExists{simplex}{}{}
71\input{solutionsequences}
72\input{tables}
73\input{thread}
74\input{threadpool}
75\input{ugraphs}
76\input{url}
77\input{varnumbers}
78\input{yall}
79