SWI-Prolog 3.3.7 Reference Manual
Dept. of Social Science Informatics (SWI)
Roeterstraat 15, 1018 WB Amsterdam
Tel. (+31) 20 5256121
SWI-Prolog is a Prolog implementation based on a subset of the WAM
(Warren Abstract Machine). SWI-Prolog was developed as an `open' Prolog
environment, providing a powerful and bi-directional interface to C in
an era this was unknown to other Prolog implementations. This
environment is required to deal with XPCE, an object-oriented GUI system
developed at SWI. XPCE is used at SWI for the development of
knowledge-intensive graphical applications.
As SWI-Prolog became more popular, a large user-community provided requirements that guided its development. Compatibility, portability, scalability, stability and providing a powerful development environment have been the most important requirements. `Edinburgh', Quintus, SICStus and the ISO-standard guide the development of the SWI-Prolog primitives.
This document gives an overview of the features, system limits and built-in predicates.
This manual is written and maintained using LaTeX . The LaTeX source
is included in the source distribution of SWI-Prolog. The manual is
converted into HTML using a converter distributed with the SWI-Prolog
sources. From the same source we generate the plain-text version and
index used by the online help system (located in the file
in the library directory) as well as the PDF version. Sources, binaries
and documentation can be downloaded from the SWi-Prolog
The SWI-Prolog project home page is located here
Copyright © 1990-- 2000 , University of Amsterdam