\chapentry {Overview}{1}{1}
\secentry {Introduction}{1}{1}{1}
\secentry {Command line Options}{1}{2}{1}
\secentry {Startup}{1}{3}{2}
\secentry {Syntax}{1}{4}{3}
\subsecentry {Integers}{1}{4}{1}{3}
\subsecentry {Floating Point Numbers}{1}{4}{2}{3}
\subsecentry {Atoms}{1}{4}{3}{4}
\subsecentry {Variables}{1}{4}{4}{4}
\subsecentry {Tuples}{1}{4}{5}{4}
\subsecentry {Lists}{1}{4}{6}{5}
\subsecentry {Character Escaping}{1}{4}{7}{5}
\secentry {Notation}{1}{5}{6}
\chapentry {Builtin Predicates}{2}{7}
\secentry {Control}{2}{1}{7}
\secentry {Loading, Consulting and Compiling}{2}{2}{8}
\subsecentry {Introduction}{2}{2}{1}{8}
\subsubsecentry {The Search Path} {2}{2}{1}{1} {8}
\subsubsecentry {Dynamic Code} {2}{2}{1}{2} {9}
\subsubsecentry {Static Code} {2}{2}{1}{3} {9}
\subsecentry {Style Warnings}{2}{2}{2}{10}
\subsecentry {Loading Dynamic Code}{2}{2}{3}{10}
\subsecentry {Loading Static Code}{2}{2}{4}{11}
\secentry {Input and Output Primitives}{2}{3}{14}
\subsecentry {Input and Output of Terms}{2}{3}{1}{14}
\subsecentry {Input and Output of Characters}{2}{3}{2}{20}
\subsecentry {File and Stream Handling}{2}{3}{3}{21}
\secentry {Arithmetic}{2}{4}{23}
\subsecentry {Arithmetic Comparison}{2}{4}{1}{25}
\secentry {Type Primitives}{2}{5}{25}
\secentry {Term Comparison}{2}{6}{27}
\subsecentry {The Standard Order on Terms}{2}{6}{1}{28}
\subsecentry {Term Comparison Predicates}{2}{6}{2}{28}
\secentry {Examining the Program State}{2}{7}{29}
\secentry {Execution and Error Handling}{2}{8}{31}
\secentry {Modifying the Database}{2}{9}{36}
\secentry {Property Management}{2}{10}{37}
\secentry {Metalogical Primitives}{2}{11}{39}
\secentry {Transformations on Reading}{2}{12}{43}
\subsecentry {Definite Clause Grammars}{2}{12}{1}{44}
\subsecentry {File Transformations}{2}{12}{2}{44}
\secentry {List Handling}{2}{13}{46}
\secentry {String and Atom Handling}{2}{14}{46}
\secentry {Threads}{2}{15}{50}
\secentry {Prolog - Parlog Interface}{2}{16}{52}
\secentry {Miscellaneous Primitives}{2}{17}{53}
\chapentry {TCP Interface}{3}{57}
\secentry {Introduction to TCP/IP}{3}{1}{57}
\secentry {Connection Oriented Protocol}{3}{2}{58}
\secentry {Connectionless Oriented Protocol}{3}{3}{60}
\secentry {Miscellaneous TCP Predicates}{3}{4}{62}
\secentry {Low Level TCP primitives}{3}{5}{64}
\secentry {Simple TCP Examples}{3}{6}{69}
\subsecentry {Connected Sockets}{3}{6}{1}{69}
\subsecentry {Connectionless Sockets}{3}{6}{2}{70}
\subsecentry {Broadcast Sockets}{3}{6}{3}{71}
\chapentry {Mailbox-based communication model}{4}{73}
\secentry {Introduction to Mailboxes}{4}{1}{74}
\subsecentry {Message Peeking}{4}{1}{1}{74}
\subsecentry {Two-way Communication}{4}{1}{2}{74}
\subsecentry {Multi-way Communication}{4}{1}{3}{74}
\secentry {Mailbox Server}{4}{2}{75}
\subsecentry {Registering Mailbox Names}{4}{2}{1}{76}
\secentry {Restricting Access}{4}{3}{76}
\secentry {Starting Mailboxes}{4}{4}{76}
\secentry {Mailbox Primitives}{4}{5}{77}
\subsecentry {Opening, Modifying and Closing Mailboxes}{4}{5}{1}{78}
\subsecentry {Reading and Writing from Mailboxes}{4}{5}{2}{78}
\subsecentry {Miscellanious Mailbox Predicates}{4}{5}{3}{79}
\chapentry {Foreign Language Interface}{5}{81}
\secentry {Foreign Language Predicates}{5}{1}{81}
\subsecentry {Compilation and Example}{5}{1}{1}{82}
\chapentry {Prolog Tracer User Guide}{6}{85}
\chapentry {Operators}{Appendix \char65}{87}
\chapentry {Error Codes}{Appendix \char66}{89}
\chapentry {Low-level Primitives}{Appendix \char67}{93}
\unnumbchapentry {Predicate Index}{97}
\unnumbchapentry {User Defined Predicate Index}{103}
\unnumbchapentry {Concept Index}{105}
