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.

Pack
tot: 272
Version
(#older)
Downloads
tot: 10,774
(#latest)
Rating
(#votes/
#comments)
Title
typedef0.1.9101164
(2/2)
Support for type definitions
twitter0.1010
(1/1)
A pack to access the twitter api
plgi1.0.61011841
(1/1)
PLGI - Prolog bindings for GLib/GObject/GIO/GTK+
plchatscript1.0.942216
(1/1)
Interface to the ChatScript server.
lambda1.0.0377
(4/4)
Lambda expressions
graphml0.1.082
(1/1)
Write GraphML files
function_expansion0.1.226253
(1/1)
Help for writing function-like macros
func0.4.2821482
(2/2)
Function application and composition
dcg_util0.3.13356
(1/1)
DCG utility predicates
callgraph0.4.11718652
(1/1)
Predicate call graph visualisation
sparkle0.0.986454
(1/1)
Prolog-friendly interface to SPARQL endpoints
hello0.0.175
(1/1)
Hello World
gvterm1.1111180
(1/1)
Show Prolog terms using graphviz
evil0.2.3171
(4/4)
Predicates to Further the Cause of Evil
plOpenGL0.6.257460
(1/1)
OpenGL Bindings
yaml0.14402
YAML parser
xtools0.0.234482
Extended tools for Prolog
xsd0.1.641510
XML Schema validation with Prolog
xlisting_web1.1.118561
Manipulate and browse prolog runtime over www
xlisting1.1.11811152
Selective Interactive Non-Deterministic Tracing
xlibrary0.0.225391
Extended Libraries for Prolog
wsdl0.150
Web Service Description Language (WSDL) and SOAP
wordnet0.9.33231
Access to WordNet database
with_thread_local1.1.118341
Call a Goal with local assertions
with_state0.0.56157
Stateful computations with records
with_open_options1.1.118451
Utilities to open various objects for read/write
with0.0.46
Context managers for SWI Prolog
wgraph0.323014
Weighted graphs, with plotting via Real
weblog0.0.563812
(0/1)
weblog
webconsole0.9.117574
(0/1)
Use a browser as HTML console
web0.1.1174
Easy web client
wam_common_lisp1.1.11825331
ANSI Common Lisp implemented in Prolog
vcard0.0.12
vCard Parser and Predicates
uuid1.1.021412
Generating and parsing version 4 UUIDs
uri_qq0.3.033120
URI quasiquotations
upsh2.4371
Unix to Prolog shell.
unionfind1.0.022
Optimal implementation of the union-find algorithm in CHR
unified_diff0.0.115
Parse and generate unified diffs
type_check1.0.117268
Type System for Prolog based on Hindley-Milner
turing1.0.223227
Turing Machine Simulator
trill5.2.0871531
A tableau probabilistic reasoner in three different versions
transpiler0.18203
A universal translator for programming languages
tor1.0.444423
Tor: Extensible Search with Hookable Disjunction
tokenize0.1.224543
A nascent tokenization library
timeutils0.0.45
Tools for temporally aware programming
tidylog0.0.17
thousands0.2.032116
(0/1)
Thousands separator for large integers
term_diff0.0.1186
tap0.4.011186113
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.761913
Literate programming with LaTeX and Prolog
swipe0.2.6114214
Shell pipeline construction with type checking
swicli2.0.0104911
SWI-Prolog interface to C/C++/.NET/Mono/Objective-C
sweet0.1.134237
Sugar to make Prolog a little sweeter
subclause_expansion1.1.118561
More detailed versions of term/goal expansion hooks
stompl0.12
STOMP client
stoics_lib1.063418
A medley of library predicates for stoics packs
sql_compiler0.1.428
Prolog to SQL compiler
spuds1.09292
Persistent, user code inclusive, documentation server for linux
spawn0.0.184
Easy concurrency
sparqlprog0.1.28132
Logic programming with SPARQL
space0.23
Space package
sort_dict0.0.328076
Sorts dicts by key
smtp1.0.0524149
An (E)SMTP client for sending mail
smtlib0.0.5462
SMT-LIB parser for SWI-Prolog
small_adventure_games1.1.81
Small Adventure Games in Prolog using the CHAT80 Prolog natural language application
sldnfdraw1.67442
SLDNF Draw is a Prolog program that draws SLDNF Trees in LaTeX
slack_prolog1.1.118187
Prolog interface to Slack http://www.slack.com
sindice0.0.53169
Access to Sindice semantic web search engine
simple_web0.3.05122
Microframework for building websites
simple_template1.3.081635
Logic-free text (HTML) templates
simple_bootstrap0.0.2142
Bootstrap Extension to Simple Web
semantria0.0.432818
Use Semantria natural language API
s_expression1.1.1188101
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.322220
Real-time persistent queues and deques.
rtg0.0.711176
Regular Tree Grammer validator
rtchecks0.0.116251
Run-Time Checker for Assertions
rserve_client1.1.0134910
R Rserve client
roman0.1.014
Roman numerals
rocksdb0.7.02218
SWI-Prolog interface to RocksDB
resp_parse0.11
Redis protocol parser and writer
resp0.3352
Redis protocol parser and writer
resbound0.8.112524
Run goal with resource bounds
regex0.3.311551156
Regular expressions
refactor0.0.341611
Refactoring Tools for SWI-Prolog
recaptcha0.9.225752
reCAPTCHA plugin for SWI-Prolog HTTP framework
real2.011314109
Integrative statistics with R
readability_parser0.0.431910
Readability Parser API
rdfs2pl0.0.53319
Compile an RDFS schema to prolog predicates
rdf_notification0.14
RDF notification
rdf_matcher0.1.3251
RDF matching utils
rdet0.0.15
Runtime determinacy checker
race0.1.07101
Client for the SOAP interface of the Attempto Reasoner RACE
r_session1.111615
Interface to an R process
quickcheck0.2.0711031
QuickCheck randomized testing
pubmed0.0.43209
Access pubmed publication records
pub_graph1.1131
Access, cache and visualise citation relations in publications servers
prosqlite1.51540853
(0/1)
An SWI-Prolog interface to SQLite
prologmud_samples1.1.11824331
Online text adventure game - Sample
prologmud_I71.1.8781
PrologMUD I7 (NomicMU!) with small Adventure Games in Prolog using the CHAT80 Prolog natural language application
prologmud1.1.11816211
Online text adventure game - MUD Server
prism0.2.1495
Run PRISM as a child process
predicate_streams1.1.11811141
Implement your own Abstract Predicate Streams
plumdrum0.0.63133
Parsing of Humdrum/Kern symbolic music file format
plsmf0.5.08217
Standard MIDI File reading
plrand0.9.1313221
Skippable pseudorandom generator and distributions
plosc0.4.66354
OSC input/output via liblo
plml2.0.316306
Prolog-Matlab bridge
plmidi0.7.07252
Interface to Mac OS X MIDI system
plmake0.0.311712
Prolog makefile-like system
pljulia0.1.417221
Embedded Julia for SWI Prolog
plfann0.0.24103
SWI-Prolog for "Fast Artificial Neural Network Library"
plcomplex0.13
Simple calculation of complex numbers
plcairo0.9.113617
plcairo - Prolog bindings for cairo graphics library
plasticsearch0.121513
Elasticsearch client API
planner_api1.1.1181
planner_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use planners speaking PDDLish and OCLh
pl_omdb0.5.08233
API interface to OMDB (Open Movie Database)
pinyin0.1.55148
Parsing and generation of Hanyu Pinyin
phil_datasets1.05114
Dataset for machine learning with phil
phil1.0.017271
Learning Hierarchical Probabilistic Logic Programs parameters with gradient descent and Expectation Maximization
pha0.1.2275
Probabilistic Horn Abduction
pfd_meta0.15
Probabilistic finite domains meta-interpreter
pfc1.1.11832512
Pfc -- a package for forward chaining in Prolog
pepl2.14207
Parameter estimation for SLP with the Failure Adjusted Maximisation algorithm.
pddl_valoptic_api1.1.1181
pddl_valoptic_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use PDDL based planners.
pcache0.1.03
Persistent answer cache
pager0.1.0131
Send output to user's preferred pager
pack_errors2.04425
Contextual error handling for packs.
pac4pl0.11
An SWI-Prolog interface to libPAC
pac1.4.8841195
Anonymous predicates expansion utility
os_lib1.38436
Operating system interaction predicates.
options1.164919
Options handling.
open_dicts0.0.12
Open dicts for SWI Prolog
odict0.2.65149
Unifier over feature structures based on attributed variables
odf_sheet0.2.345438
Load and analyze ODF spreadsheets (.ods)
obo_ro0.0.13
Vocab for OBO Relation Ontology
obo_metadata0.0.4352
RDF vocabulary for OBO metadata ontologies
obo_core0.0.12
Vocab for upper parts of core OBOs such as GO
number_to_word0.4.251712
Integer to English word conversions
notes8000.1.0121
Query phone number data from 800notes.com
no_repeats1.1.1187101
New ways to avoid duplicate solutions
nanp0.1.0121
phone numbers in the North American Numbering Plan
nan_system_sources1.2.03
Nan.System.Sources - Answer Sources in Prolog
nan_numerics_prime1.2.54127
Nan.Numerics.Prime - A simple prime number library
nan_common1.222016
Common operations (validation, etc.)
mutable_variables1.0.026
Mutable Variables
must_trace1.1.11825321
Trace with your eyeballs instead of your fingers
musicxml0.0.2175
MusicXML partial reader
musicbrainz0.7.0213913
Musicbrainz client library
multimodal_dcg1.1.118462
Reduce floundering of DCGs by constraining and narrowing search
mtx0.2193
Working with data matrices
msgpack0.1.64104
DCG for packing & unpacking of MessagePack data to/from bytes
mqtt1.0.522321
mqtt - pub/sub pack for SWI-Prolog using mosquitto
mpi1.05141
Porting of the LAMMPI library of Yap Prolog to SWI-Prolog
mlu0.212821
Machine learning utilities
miser0.0.116
Build self-optimizing predicates
mime0.5.05
MIME processing library based on maildrop
midiutils0.0.36
midiutils
memo0.6.117587
Persistent memoisation of deterministic predicates
maybe0.1.134441
The maybe type represents an optional value
mavis0.2.3111232
Optional type declarations
matrix1.9.16812
Operations with matrices using prolog and c
markdown0.0.2110195
Markdown parser for SWI-Prolog
mail_standards0.1.01
Mail IMF and Maildir implementations.
mail_merge1.0.0151
Library for performing mail merge
loop_check1.1.1189122
New simple loop checking
logtalk3.21.0492808
Logtalk - Object-Oriented Logic Programming Language
logicmoo_utils1.1.118791
Common predicates used by external Logicmoo Utils and Base
logicmoo_planners1.1.118262
Various Hybrid HTN Planners speaking PDDLish and OCLh
logicmoo_base1.1.11832391
LogicMOO - Extends Prolog Programming to support Dynamic Epistemic Logic (DEL) with Constraints
log4p0.0.27
Logging for Prolog
list_util0.13.01824936
Predicates for working with lists
link_grammar_prolog4.1.0.322117
A binding to use the Link Grammar library from SWI-Prolog
lib_atts1.1.118351
Common atts.pl interface like https://sicstus.sics.se/sicstus/docs/4.0.0/html/sicstus/lib_002datts.html
lib2.210131
Predicate based code development
ldap4pl0.1187
LDAP interface
lcs0.0.125
Longest common subsequence
lbfgs1.015361
An interface to call libLBFGS from within SWI-Prolog
lambda_abstractions0.2.1121
Lambda abstractions
kubepl0.1141
Kubernetes Client
jwt_io0.0.2132
JWT implementation
julian_lang_en0.0.212423
Parse English language phrases into library(julian) constraints
julian0.1.3629014
Date and time library
jolog0.0.312818
Concurrency via join calculus
irc_client1.3.094320
Low level interface to IRC clients
interpolate0.1.02291
String interpolation
instant_prolog_docs1.1.118693
Magically document prolog source files based on predicate and variable naming conventions
inotify0.9.11109
Access Linux inotify API to watch file system changes
indexed_terms1.0.05
Positional access to terms' arguments
index_util0.0.21136
Prolog index utils
ical0.1.03
iCalendar DCGs and parsers
httplog0.5.0143
Analyse SWI-Prolog HTTP server log files
http2_client0.7.0571
An HTTP/2 client
hook_hybrid1.1.11811121
Hook assert retract call of *specific* predicates
hilog1.1.118121
XSB-Prolog's Hilog Syntax in SWI-Prolog
hdt0.551912
Access RDF HDT files
hashtbl0.0.211312
Pure and impure hash tables
gvar_syntax1.1.11811121
Global Variable Syntax
graphql-swipl0.0.11
GraphQL Prolog Library
graphql0.0.14
GraphQL Prolog Library
graphpl0.1.1372
Graph data structure utilities
googleclient0.5.232311
SWI-Prolog code for "Login with Google"
geoip0.9.0193
Access GeoIP library
genutils0.3.622494
General miscellaneous utilities
format_spec0.0.212120
Parse and check format/2 specifications
fnotation0.0.32129
Function notation for Prolog
flux1.1.1181
FLUX: A logic programming method for reasoning agents and ALPprologis a Prolog implementation of an action programming language. With ALPprolog you can program strategies for autonomous agents in dynamic domains like e.g. the Wumpus world.
fluents0.1.010
Access all solutions of a goal without backtracking
fine_upload0.1.5483
HTTP support for file uploading
fileutils0.3.165014
Utilities for reading, writing and finding files
file_utilities0.111
File system related utilities
file_scope1.1.118561
File local scoped efects
ffimatrix0.1.04133
Operations with matrices using Prolog and C
ffi0.15
Dynamically call C functions
fcgi0.9.016
fcgi - Fast Common Gateway Interface (FastCGI) library for Prolog
environ1.030
Demo package with C code, fetching the program environment
eggdrop1.1.11815181
Hook up to an existing IRC Client called an Eggdrop
edcgs0.1.3374
Extended Definite Clause Grammars
edcg0.9.01143
Extended DCG
each_call_cleanup1.1.11810131
Each Call Redo Setup and Cleanup
dotcloud0.0.211711
Conveniences for running on dotCloud
dot_dcg0.1.04231
A DCG for a subset of the DOT language
docstore2.0.1511276
Document-oriented database for Prolog
djson0.0.327973
Declarative JSON
dirtree1.0.021714
load XML of directory content
dictype0.0.24
Concise dict type definitions
dictoo1.1.11810121
Dict-like OO Syntax
dict_schema0.0.218178
Dict converter and validator
dialect-ciao0.0.11
Ciao Prolog compatibility library
dia0.124
An interface to .dia-uml-diagrams
delay0.3.378254
Avoid instantiation errors for built-in predicates
debug_call1.13208
Debugging with calls
dcgutils1.1.210959
DCG related utilities
db_facts0.5513824
Common db-tables-as-facts and SQL layer for ODBC and proSQLite.
ct_fft0.01
Cooley–Tukey FFT algorithm
css_write1.0.0165
DCG for generating CSS
cplint_r1.0.010289
R plotting predicates for cplint
cplint_datasets1.022
Dataset for machine learning with cplint
cplint4.5.01554373
A suite of programs for reasoning with probabilistic logic programs
coworkers0.1.02
Workflow definition as tree of coroutines
consul_client0.0.4252
Consul Client
condition0.1.133523
Condition system a la Common Lisp
clitable1.0.3374
Pretty unicode tables for the CLI with Prolog
clause_attvars1.1.118791
An alternate interface to the clause database to allow attributed variables to be asserted
ciao0.0.14
Ciao Prolog compatibility library
chess_db0.3284
PGN and chess game databases.
chat801.04
Classic CHAT80 Prolog natural language application
chan0.2.012
Directional channels for thread communication
ccprism0.1.020282
Probabilistic programming using delimited continuations
cclab0.1.513214
Continuations lab
call_cleaup_each0.0.11
Call A Goal On Each Redo
by_unix0.1.615149
An elegance layer to calling unix commands.
body_reordering1.1.118165
Clause expansion Utils for deciding which order to run Goals in a body
blog_core1.3.018701
Blog/CMS framework
biomake0.1.55144
Prolog makefile-like system
bio_db_repo18.11.278251
Data package for bio_db.
bio_db2.213411
Access, use and manage big, biological datasets.
bims2.243513
Bayesian inference of model structure.
bibtex0.1.6132
Parser and predicates for BibTeX files
bencode0.0.127
Bencoding from BitTorrent protocol
bddem4.3.09211
A library for manipulating Binary Decision Diagrams
b_real0.43208
Interface predicates to commonly used R functions.
auc1.010732
Library for computing Areas Under the Receiving Operating Charactersitics and Precision Recall curves
atom_feed0.2.043925
Parse Atom and RSS feeds
assertions0.0.120301
Ciao Assertions Reader for SWI-Prolog
arouter1.1.1413792
Alternative HTTP path router
app0.112
Prolog Application Server
ape6.7.01102
Parser for Attempto Controlled English (ACE)
amazon_api0.0.324437
Interface to Amazon APIs
aleph5121272
Aleph Inductive Logic Prorgramming system
achelois0.4.669989
Collection of tools to make writing scripts in Prolog easier.