Did you know ... Search Documentation:
Packs (add-ons) for SWI-Prolog

Below is a list of known packages. Please be aware that packages are not moderated. Installing a pack does not execute code in the pack, but simply loading a library from the pack may execute arbitrary code. More information about packages is available here. You can search for packages from the Prolog command line using pack_list/1. This contacts the pack server for packs that match by name or title. A leading i indicates that the pack is already installed, while p merely indicates that it is known by the server.

?- pack_list(graph).
p callgraph@0.3.4           - Predicate call graph visualisation
i graphml@0.1.0             - Write GraphML files
i gvterm@1.1                - Show Prolog terms using graphviz
p musicbrainz@0.6.3         - Musicbrainz client library
p sindice@0.0.3             - Access to Sindice semantic web search engine

After finding the right pack, the pack and its dependencies can be installed using the pack_install/1 as illustrated below.

?- pack_install(hello).

Clicking the package shows details and allows you to rate and comment the pack.

PackVersion
(#older)
Downloads
(#latest)
Rating
(#votes/
#comments)
Title
typedef0.1.567913
(2/2)
Support for type definitions
plgi1.0.487434
(1/1)
PLGI - Prolog bindings for GLib/GObject/GIO/GTK+
plchatscript1.0.94159
(1/1)
Interface to the ChatScript server.
lambda1.0.0268
(4/4)
Lambda expressions
graphml0.1.064
(1/1)
Write GraphML files
function_expansion0.1.225344
(1/1)
Help for writing function-like macros
func0.4.2816230
(2/2)
Function application and composition
dcg_util0.3.12184
(1/1)
DCG utility predicates
callgraph0.4.01613286
(1/1)
Predicate call graph visualisation
sparkle0.0.985646
(1/1)
Prolog-friendly interface to SPARQL endpoints
hello0.0.175
(1/1)
Hello World
gvterm1.118049
(1/1)
Show Prolog terms using graphviz
evil0.2.3171
(4/4)
Predicates to Further the Cause of Evil
plOpenGL0.6.254733
(1/1)
OpenGL Bindings
yaml0.14162
YAML parser
xtools0.0.226392
Extended tools for Prolog
xlisting_web1.1.118341
Manipulate and browse prolog runtime over www
xlisting1.1.118561
Selective Interactive Non-Deterministic Tracing
xlibrary0.0.220322
Extended libraries for Prolog
wsdl0.139
Web Service Description Language (WSDL) and SOAP
with_thread_local1.1.118341
Call a Goal with local assertions
with_state0.0.56124
Stateful computations with records
with_open_options1.1.118341
Utilities to open various objects for read/write
with0.0.42
Context managers for SWI Prolog
wgraph0.32215
Weighted graphs, with plotting via Real
webscale_client0.0.6242
WebScale Client
weblog0.0.563512
(0/1)
weblog
webconsole0.9.116261
(0/1)
Use a browser as HTML console
web0.1.13
Easy web client
uri_qq0.3.033019
URI quasiquotations
upsh2.12
Save a state for executing commands.
unionfind1.0.021
Optimal implementation of the union-find algorithm in CHR
unified_diff0.0.114
Parse and generate unified diffs
type_check1.0.115955
Type System for Prolog based on Hindley-Milner
turing1.0.222722
Turing Machine Simulator
trill4.1.0731112
A tableau probabilistic reasoner in three different versions
transpiler0.1142
A universal translator for programming languages
tor1.0.443716
Tor: Extensible Search with Hookable Disjunction
tokenize0.1.222523
A nascent tokenization library
timeutils0.0.43
Tools for temporally aware programming
tidylog0.0.14
thousands0.2.031510
(0/1)
Thousands separator for large integers
term_diff0.0.1164
tap0.4.0118310
Automated tests via Test Anything Protocol
tabling_dra1.0.4572
SWI-Prolog interface to Table-handling procedures for the "dra" interpreter. Written by Feliks Kluzniak at UTD (March 2009)
switex0.0.76115
Literate programming with LaTeX and Prolog
swipl_ext0.0.3128301
Various extensions for SWI-Prolog (atom, date/time, URI, XML, etc).
swipe0.2.611357
Shell pipeline construction with type checking
swicli2.0.010402
SWI-Prolog interface to C/C++/.NET/Mono/Objective-C
sweet0.1.133429
Sugar to make Prolog a little sweeter
subclause_expansion1.1.118341
More detailed versions of term/goal expansion hooks
stompl0.12
STOMP client
stoics_lib0.3252
A medley of library predicates for stoics packs
sql_compiler0.1.428
Prolog to SQL compiler
spuds0.1.48278
Persistent, user code inclusive, documentation server for linux
spawn0.0.165
Easy concurrency
sparql_client0.0.6351
A SPARQL Client with result set streaming support.
sp2b0.0.22
Copy of the SP²B Bechmark.
sort_dict0.0.326561
Sorts dicts by key
smtp1.0.051939
An (E)SMTP client for sending mail
sldnfdraw1.6362
SLDNF Draw is a Prolog program that draws SLDNF Trees in LaTeX
slack_prolog1.1.118121
Prolog interface to Slack http://www.slack.com
sindice0.0.53147
Access to Sindice semantic web search engine
simple_template1.1.0610342
Logic-free text (HTML) templates
semantria0.0.432616
Use Semantria natural language API
s_expression1.1.118451
Utilities for Handling of S-Expression Lisp/Scheme-Like forms and parsing of KIF, GDL, PDDL, CLIF
rtrace0.0.71
Selective Interactive Non-Deterministic Tracing
rtp_qsndqs0.322119
Real-time persistent queues and deques.
rtchecks0.0.112213
Run-Time Checking for Ciao and SWI-Prolog
rserve_client0.88311
R Rserve client
roman0.1.04
Roman numerals
rocksdb0.6.01107
SWI-Prolog interface to RocksDB
resbound0.8.112322
Run goal with resource bounds
requires1.05132
Predicate based code development
regex0.3.21036459
Regular expressions
refactor0.0.337551
Refactoring Tools for SWI-Prolog
recaptcha0.9.225146
reCAPTCHA plugin for SWI-Prolog HTTP framework
real2.01125954
Integrative statistics with R
readability_parser0.0.431910
Readability Parser API
rdfs2pl0.0.322017
Compile an RDFS schema to prolog predicates
rdf_server0.0.369112
RDF server in SWI-Prolog.
rdf_notification0.12
RDF notification
rdf_guess0.0.21
Heuristically guess the RDF serialization format of a data stream.
rdf_geo0.0.2121
Geospatial support for the Semantic Web.
rdf_ext0.0.2820271
Advanced RDF support for SWI-Prolog.
rdf_client0.0.1412171
An RDF Client with support for streaming SPARQL result sets.
rdet0.0.13
Runtime determinacy checker
r_session1.111615
Interface to an R process
quickcheck0.2.066416
QuickCheck randomized testing
pubmed0.0.43198
Access pubmed publication records
prosqlite1.21229235
(0/1)
An SWI-Prolog interface to SQLite
prologmud_samples1.1.11813191
Online text adventure game - Sample
prologmud1.1.1188102
Online text adventure game - MUD Server
prism0.2.1451
Run PRISM as a child process
predicate_streams1.1.118891
Implement your own Abstract Predicate Streams
plumdrum0.0.3294
Parsing of Humdrum/Kern symbolic music file format
plsmf0.5.08162
Standard MIDI File reading
plrand0.9.1011172
Skippable pseudorandom generator and distributions
plosc0.4.55272
OSC input/output via liblo
plml2.0.114233
Prolog-Matlab bridge
plmidi0.7.07252
Interface to Mac OS X MIDI system
plmake0.0.311712
Prolog makefile-like system
plcairo0.9.015
plcairo - Prolog bindings for cairo graphics library
plasticsearch0.121210
Elasticsearch client API
pl_omdb0.2.04112
API interface to OMDB (Open Movie Database)
plJwt0.1.05
plJwt
pinyin0.1.55126
Parsing and generation of Hanyu Pinyin
pha0.1.2231
Probabilistic Horn Abduction
pfc1.1.11814182
Pfc -- a package for forward chaining in Prolog
pepl2.14174
Parameter estimation for SLP with the Failure Adjusted Maximisation algorithm.
pagination0.0.8671
Pagination support (including HTTP- and HTML-based) for SWI-Prolog.
pager0.1.01
Send output to user's preferred pager
pack_errors0.32163
Contextual error handling for packs.
pac4pl0.11
An SWI-Prolog interface to libPAC
pac1.2.367851
Anonymous predicates expansion utility
os_sub0.0.633019
Collect files and sub-directories
os_lib0.65152
Operating system interaction predicates.
options0.54182
Options handling.
odict0.2.65105
Unifier over feature structures based on attributed variables
odf_sheet0.2.344327
Load and analyze ODF spreadsheets (.ods)
number_to_word0.4.25116
Integer to English word conversions
notes8000.1.01
Query phone number data from 800notes.com
no_repeats1.1.118341
New ways to avoid duplicate solutions
nanp0.1.01
phone numbers in the North American Numbering Plan
nan_system_sources1.2.02
Nan.System.Sources - Answer Sources in Prolog
nan_numerics_prime1.2.5472
Nan.Numerics.Prime - A simple prime number library
nan_common1.221814
Common operations (validation, etc.)
mutable_variables1.0.023
Mutable Variables
must_trace1.1.11814171
Trace with your eyeballs instead of your fingers
musicxml0.0.2153
MusicXML partial reader
musicbrainz0.7.0213711
Musicbrainz client library
multimodal_dcg1.1.118341
Reduce floundering of DCGs by constraining and narrowing search
mqtt1.0.52108
mqtt - pub/sub pack for SWI-Prolog using mosquitto
mpi1.05101
Porting of the LAMMPI library of Yap Prolog to SWI-Prolog
mlu0.21114
Machine learning utilities
miser0.0.113
Build self-optimizing predicates
mime0.5.02
MIME processing library based on maildrop
midiutils0.0.33
midiutils
memo0.5.0154814
Persistent memoisation of deterministic predicates
maybe0.1.133734
The maybe type represents an optional value
mavis0.2.389575
Optional type declarations
matrix1.043011
Operations with matrices
markdown0.0.218276
Markdown parser for SWI-Prolog
loop_check1.1.118671
New simple loop checking
logtalk3.10.9361662
Logtalk - Object-Oriented Logic Programming Language
logicmoo_utils1.1.118451
Common predicates used by external Logicmoo Utils and Base
logicmoo_planners1.1.118143
Various Hybrid HTN Planners speaking PDDLish and OCLh
logicmoo_base1.1.11824311
LogicMOO - Extends Prolog Programming to support Dynamic Epistemic Logic (DEL) with Constraints
list_util0.12.01616124
Predicates for working with lists
link_grammar_prolog4.1.0.32129
A binding to use the Link Grammar library from SWI-Prolog
lib_atts1.1.118231
Common atts.pl interface like https://sicstus.sics.se/sicstus/docs/4.0.0/html/sicstus/lib_002datts.html
lib1.2242
Predicate based code development
ldf_server0.0.6462
A Linked Data Fragment (LDF) Server for SWI-Prolog.
ldf_client0.0.4242
A Linked Data Fragment (LDF) Client for SWI-Prolog.
ldap4pl0.1165
LDAP interface
lcs0.0.121
Longest common subsequence
lbfgs1.011241
An interface to call libLBFGS from within SWI-Prolog
kubepl0.1141
Kubernetes Client
julian_lang_en0.0.211817
Parse English language phrases into library(julian) constraints
julian0.1.3510014
Date and time library
jolog0.0.312111
Concurrency via join calculus
irc_client1.3.09263
Low level interface to IRC clients
interpolate0.1.01221
String interpolation
instant_prolog_docs1.1.118451
Magically document prolog source files based on predicate and variable naming conventions
inotify0.9.1132
Access Linux inotify API to watch file system changes
httplog0.5.03
Analyse SWI-Prolog HTTP server log files
html_ext0.0.108132
Extensions for HTML support in SWI-Prolog.
hook_hybrid1.1.118671
Hook assert retract call of *specific* predicates
hdt0.5241
Access RDF HDT files
hashtbl0.0.2132
Pure and impure hash tables
gvar_syntax1.1.1189101
Global Variable Syntax
googleclient0.5.221411
SWI-Prolog code for "Login with Google"
geoip0.9.03
Access GeoIP library
geo0.0.108102
Geospatial support for SWI-Prolog.
genutils0.1.1715353
General miscellaneous utilities
format_spec0.0.211817
Parse and check format/2 specifications
fnotation0.0.3296
Function notation for Prolog
fluents0.1.07
Access all solutions of a goal without backtracking
fileutils0.2.053630
Utilities for reading, writing and finding files
file_utilities0.15
File system related utilities
file_scope1.1.118451
File local scoped efects
fcgi0.9.012
fcgi - Fast Common Gateway Interface (FastCGI) library for Prolog
environ1.023
Demo package with C code, fetching the program environment
eggdrop1.1.11814161
Hook up to an existing IRC Client called an Eggdrop
edcg0.9.03
Extended DCG
each_call_cleanup1.1.118791
Each Call Redo Setup and Cleanup
dotcloud0.0.21159
Conveniences for running on dotCloud
dot_dcg0.1.04111
A DCG for a subset of the DOT language
docstore2.0.159660
Document-oriented database for Prolog
djson0.0.325650
Declarative JSON
dirtree1.0.011312
load XML of directory content
dictoo1.1.118781
Dict-like OO Syntax
dict_schema0.0.216764
Dict converter and validator
dialect-ciao0.0.11
Ciao Prolog compatibility library
dia0.122
An interface to .dia-uml-diagrams
delay0.3.376941
Avoid instantiation errors for built-in predicates
debug_call0.3272
Debugging with calls
dcgutils1.0.786110
DCG related utilities
dcg_ext0.0.139112
Additional DCG support for SWI-Prolog.
db_facts0.4410011
Common db-tables-as-facts and SQL layer for ODBC and proSQLite.
cplint_r1.0.09197
R plotting predicates for cplint
cplint_datasets1.010
Dataset for machine learning with cplint
cplint3.1.01122461
A suite of programs for reasoning with probabilistic logic programs
cowspeak0.0.46155
Cowspeak
condition0.1.132917
Condition system a la Common Lisp
clause_attvars1.1.118671
An alternate interface to the clause database to allow attributed variables to be asserted
ckan_api0.0.6241
One API to access all CKAN sites.
ckan2rdf0.0.7351
Cache CKAN sites as RDF.
ciao0.0.11
Ciao Prolog compatibility library
chan0.2.07
Directional channels for thread communication
ccprism0.0.89132
Probabilistic programming using delimited continuations
cclab0.1.210152
Continuations lab
call_cleaup_each0.0.11
Call A Goal On Each Redo
by_unix0.1.612927
An elegance layer to calling unix commands.
body_reordering1.1.118121
Clause expansion Utils for deciding which order to run Goals in a body
blog_core1.1.116574
Blog/CMS framework
biomake0.1.1241
Prolog makefile-like system
bio_db_repo17.3.33111
Data package for bio_db.
bio_db0.98222
Access, use and manage big, biological datasets.
bims2.24242
Bayesian inference of model structure.
bencode0.0.124
Bencoding from BitTorrent protocol
b_real0.43153
Interface predicates to commonly used R functions.
auc1.09512
Library for computing Areas Under the Receiving Operating Charactersitics and Precision Recall curves
atom_feed0.2.043723
Parse Atom and RSS feeds
assertions0.0.116261
Ciao Assertions Reader for SWI-Prolog
arouter1.1.149756
Alternative HTTP path router
app0.112
Prolog Application Server
amazon_api0.0.323629
Interface to Amazon APIs
aleph58732
Aleph Inductive Logic Prorgramming system