Did you know ...
Search Documentation:
Title for pldoc(object(section(1,'4',swi('/doc/Manual/builtin.html'))))
HOME
DOWNLOAD
SWI-Prolog
Sources/building
Docker images
Add-ons
Browse GIT
DOCUMENTATION
Manual
Packages
FAQ
Command line
PlDoc
Bluffers
▶
Prolog syntax
PceEmacs
HTML generation
License
Publications
Rev 7 Extensions
TUTORIALS
Beginner
▶
Getting started
Learn Prolog Now!
Simply Logical
Debugger
Development tools
Advanced
▶
Modules
Grammars (DCGs)
clp(fd)
Printing messages
PlDoc
Web applications
▶
Web applications
Let's Encrypt!
Pengines
Semantic web
▶
ClioPatria
RDF namespaces
Graphics
▶
XPCE
GUI options
Machine learning
▶
Probabilistic Logic Programming
External collections
▶
Meta level tutorials
For packagers
▶
Linux packages
COMMUNITY
IRC
Forum & mailing list
Blog
News
Report a bug
Submit a patch
Submit an add-on
Roadmap (on GitHub)
External links
Contributing
Code of Conduct
Contributors
SWI-Prolog items
COMMERCIAL
WIKI
Login
View changes
Sandbox
Wiki help
All tags
4
Built-in Predicates
Section Index
4.1
Notation of Predicate Descriptions
4.1.1
The argument mode indicator
4.1.2
Predicate indicators
4.1.2.1
Non-terminal indicators
4.1.3
Predicate behaviour and determinism
4.2
Character representation
4.3
Loading Prolog source files
4.3.1
Conditional compilation and program transformation
4.3.1.1
Program transformation with source layout info
4.3.1.2
Conditional compilation
4.3.2
Reloading files, active code and threads
4.3.2.1
Errors and warnings during compilation
4.3.2.2
Compilation of mutually dependent code
4.3.2.3
Compilation with multiple threads
4.3.3
Quick load files
4.4
Editor Interface
4.4.1
Customizing the editor interface
4.5
Verify Type of a Term
4.6
Comparison and Unification of Terms
4.6.1
Standard Order of Terms
4.6.2
Special unification and comparison predicates
4.7
Control Predicates
4.8
Meta-Call Predicates
4.9
Delimited continuations
4.10
Exception handling
4.10.1
Unwind exceptions
4.10.2
Urgency of exceptions
4.10.3
Debugging and exceptions
4.10.4
The exception term
4.10.4.1
General form of the ISO standard exception term
4.10.4.2
Throwing exceptions from applications and libraries
4.11
Printing messages
4.11.1
Printing from libraries
4.12
Handling signals
4.12.1
Notes on signal handling
4.13
DCG Grammar rules
4.14
Database
4.14.1
Managing (dynamic) predicates
4.14.1.1
Transactions
4.14.1.2
Impact of transactions
4.14.2
The recorded database
4.14.3
Flags
4.14.4
Tries
4.14.5
Update view
4.14.6
Indexing databases
4.15
Declaring predicate properties
4.16
Examining the program
4.17
Input and output
4.17.1
Predefined stream aliases
4.17.2
ISO Input and Output Streams
4.17.3
Edinburgh-style I/O
4.17.4
Switching between Edinburgh and ISO I/O
4.17.5
Adding IRI schemas
4.17.6
Write onto atoms, code-lists, etc.
4.17.7
Fast binary term I/O
4.18
Status of streams
4.19
Primitive character I/O
4.20
Term reading and writing
4.21
Analysing and Constructing Terms
4.21.1
Non-logical operations on terms
4.22
Analysing and Constructing Atoms
4.23
Localization (locale) support
4.24
Character properties
4.24.1
Case conversion
4.24.2
White space normalization
4.24.3
Language-specific comparison
4.25
Operators
4.26
Character Conversion
4.27
Arithmetic
4.27.1
Special purpose integer arithmetic
4.27.2
General purpose arithmetic
4.27.2.1
Arithmetic types
4.27.2.2
Rational number examples
4.27.2.3
Rational numbers or floats
4.27.2.4
IEEE 754 floating point arithmetic
4.27.2.5
Floating point arithmetic precision
4.27.2.6
Arithmetic Functions
4.28
Misc arithmetic support predicates
4.29
Built-in list operations
4.30
Finding all Solutions to a Goal
4.31
Forall
4.32
Formatted Write
4.32.1
Writef
4.32.2
Format
4.32.3
Programming Format
4.33
Global variables
4.33.1
Compatibility of SWI-Prolog Global Variables
4.34
Terminal Control
4.35
Operating System Interaction
4.35.1
Windows-specific Operating System Interaction
4.35.2
Apple specific Operating System Interaction
4.35.3
Dealing with time and date
4.35.3.1
Time and date data structures
4.35.3.2
Time and date predicates
4.35.4
Controlling the
swipl-win.exe
console window
4.36
File System Interaction
4.37
User Top-level Manipulation
4.38
Creating a Protocol of the User Interaction
4.39
Debugging and Tracing Programs
4.40
Debugging and declaring determinism
4.41
Obtaining Runtime Statistics
4.42
Execution profiling
4.42.1
library(prolog_profile): Execution profiler
4.42.2
Visualizing profiling data
4.42.3
Information gathering
4.42.3.1
Profiling in the Windows Implementation
4.43
Memory Management
4.43.1
Garbage collection
4.43.2
Heap memory (malloc)
4.43.2.1
TCMalloc control predicates
4.44
Windows DDE interface
4.44.1
DDE client interface
4.44.2
DDE server mode
4.45
Miscellaneous