- Documentation
- Reference manual
 - Packages
- SWI-Prolog C-library
- Introduction
 - library(process): Create processes and redirect I/O
 - library(filesex): Extended operations on files
 - library(uid): User and group management on Unix systems
 - library(syslog): Unix syslog interface
 - library(socket): Network socket (TCP and UDP) library
 - The stream_pool library
 - library(uri): Process URIs
 - CGI Support library
 - Password encryption library
 - library(uuid): Universally Unique Identifier (UUID) Library
 - SHA* Secure Hash Algorithms
 - library(md5): MD5 hashes
 - library(hash_stream): Maintain a hash on a stream
 - Memory files
 - Time and alarm library
 - library(unix): Unix specific operations
 - Limiting process resources
 - library(udp_broadcast): A UDP Broadcast Bridge
 - library(prolog_stream): A stream with Prolog callbacks
 
 
 - SWI-Prolog C-library
 
 
1 Introduction
Many useful facilities offered by one or more of the operating systems supported by SWI-Prolog are not supported by the SWI-Prolog kernel distribution. Including these would enlarge the footprint and complicate portability matters while supporting only a limited part of the user-community.
This document describes library(unix) to deal with the 
Unix process API,
library(socket) to deal with inet-domain TCP and UDP 
sockets, library(cgi) to deal with getting CGI form-data if 
SWI-Prolog is used as a CGI scripting language, library(crypt) 
to provide password encryption and verification, library(sha) 
providing cryptographic hash functions and
library(memfile) providing in-memorty pseudo files.