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: 275
Version
(#older)
Downloads
tot: 11,569
(#latest)
Rating
(#votes/
#comments)
Title
regex0.3.311574179
Regular expressions
cplint4.5.01594462
A suite of programs for reasoning with probabilistic logic programs
prosqlite1.51542570
(0/1)
An SWI-Prolog interface to SQLite
lambda1.0.0386
(4/4)
Lambda expressions
real2.011326121
Integrative statistics with R
julian0.1.3630814
Date and time library
logtalk3.23.0512963
Logtalk - Object-Oriented Logic Programming Language
list_util0.13.01826445
Predicates for working with lists
smtp1.0.0524753
An (E)SMTP client for sending mail
func0.4.2822593
(2/2)
Function application and composition
callgraph0.4.11719763
(1/1)
Predicate call graph visualisation
tap0.4.011192119
Automated tests via Test Anything Protocol
simple_template1.3.081666
Logic-free text (HTML) templates
achelois0.5.0716121
Collection of tools to make writing scripts in Prolog easier.
trill5.2.0891581
A tableau probabilistic reasoner in three different versions
db_facts0.5514329
Common db-tables-as-facts and SQL layer for ODBC and proSQLite.
aleph5151432
Aleph Inductive Logic Prorgramming system
arouter1.1.1414196
Alternative HTTP path router
mavis0.2.3111262
Optional type declarations
typedef0.1.91012412
(2/2)
Support for type definitions
plgi1.0.61012245
(1/1)
PLGI - Prolog bindings for GLib/GObject/GIO/GTK+
pac1.4.8841217
Anonymous predicates expansion utility
gvterm1.1111786
(1/1)
Show Prolog terms using graphviz
docstore2.0.1511781
Document-oriented database for Prolog
quickcheck0.2.0711332
QuickCheck randomized testing
markdown0.0.21106100
Markdown parser for SWI-Prolog
dcgutils1.1.3111023
DCG related utilities
matrix1.9.16912
Operations with matrices using prolog and c
spawn0.0.188
Easy concurrency
graphml0.1.086
(1/1)
Write GraphML files
sort_dict0.0.328379
Sorts dicts by key
dict_schema0.0.218380
Dict converter and validator
delay0.3.378355
Avoid instantiation errors for built-in predicates
djson0.0.328276
Declarative JSON
blog_core1.5.121774
Blog/CMS framework
auc1.010772
Library for computing Areas Under the Receiving Operating Charactersitics and Precision Recall curves
webconsole0.9.117675
(0/1)
Use a browser as HTML console
plOpenGL0.6.257662
(1/1)
OpenGL Bindings
hello0.0.175
(1/1)
Hello World
type_check1.0.117268
Type System for Prolog based on Hindley-Milner
sparkle0.0.986555
(1/1)
Prolog-friendly interface to SPARQL endpoints
function_expansion0.1.226354
(1/1)
Help for writing function-like macros
refactor0.0.341621
Refactoring Tools for SWI-Prolog
fileutils0.3.510613
Utilities for reading, writing and finding files
memo0.6.117609
Persistent memoisation of deterministic predicates
recaptcha0.9.225954
reCAPTCHA plugin for SWI-Prolog HTTP framework
sldnfdraw1.67582
SLDNF Draw is a Prolog program that draws SLDNF Trees in LaTeX
rserve_client1.1.0145514
R Rserve client
pfc1.2.11134552
Pfc -- a package for forward chaining in Prolog
odf_sheet0.2.345539
Load and analyze ODF spreadsheets (.ods)
genutils0.3.823532
General miscellaneous utilities
by_unix0.1.615351
An elegance layer to calling unix commands.
wsdl0.151
Web Service Description Language (WSDL) and SOAP
swicli2.0.0105113
SWI-Prolog interface to C/C++/.NET/Mono/Objective-C
options1.165121
Options handling.
os_lib1.384912
Operating system interaction predicates.
xtools0.0.234482
Extended tools for Prolog
tokenize0.1.224745
A nascent tokenization library
swipe0.2.6114618
Shell pipeline construction with type checking
irc_client1.3.094623
Low level interface to IRC clients
sweet0.1.134540
Sugar to make Prolog a little sweeter
pack_errors2.04458
Contextual error handling for packs.
maybe0.1.134542
The maybe type represents an optional value
logicmoo_base1.2.11135452
LogicMOO - Extends Prolog Programming to support Dynamic Epistemic Logic (DEL) with Constraints
amazon_api0.0.324538
Interface to Amazon APIs
yaml0.14442
YAML parser
tor1.0.444423
Tor: Extensible Search with Hookable Disjunction
plcairo1.1.03446
plcairo - Prolog bindings for cairo graphics library
bio_db2.314442
Access, use and manage big, biological datasets.
dcg_util0.3.134110
(1/1)
DCG utility predicates
atom_feed0.2.044127
Parse Atom and RSS feeds
musicbrainz0.7.0214014
Musicbrainz client library
xlibrary0.0.225391
Extended Libraries for Prolog
weblog0.0.563912
(0/1)
weblog
bims2.35393
Bayesian inference of model structure.
wam_common_lisp1.2.11127383
ANSI Common Lisp implemented in Prolog
lbfgs1.015381
An interface to call libLBFGS from within SWI-Prolog
stoics_lib1.063721
A medley of library predicates for stoics packs
plosc0.4.66376
OSC input/output via liblo
condition0.1.133725
Condition system a la Common Lisp
prologmud_samples1.2.11126361
Online text adventure game - Sample
rdfs2pl0.0.533412
Compile an RDFS schema to prolog predicates
turing1.0.223328
Turing Machine Simulator
mlu0.213326
Machine learning utilities
environ1.033
Demo package with C code, fetching the program environment
wgraph0.323216
Weighted graphs, with plotting via Real
must_trace1.1.11825321
Trace with your eyeballs instead of your fingers
assertions0.0.121321
Ciao Assertions Reader for SWI-Prolog
uri_qq0.3.033120
URI quasiquotations
plml2.0.316317
Prolog-Matlab bridge
interpolate0.1.02311
String interpolation
cplint_r1.0.0103112
R plotting predicates for cplint
ccprism0.1.020315
Probabilistic programming using delimited continuations
spuds1.09303
Persistent, user code inclusive, documentation server for linux
phil1.0.018301
Learning Hierarchical Probabilistic Logic Programs parameters with gradient descent and Expectation Maximization
semantria0.0.432919
Use Semantria natural language API
jolog0.0.312919
Concurrency via join calculus
bencode0.0.129
Bencoding from BitTorrent protocol
sql_compiler0.1.428
Prolog to SQL compiler
bio_db_repo19.2.119282
Data package for bio_db.
wordnet0.9.34274
Access to WordNet database
plmidi0.7.07274
Interface to Mac OS X MIDI system
julian_lang_en0.0.212726
Parse English language phrases into library(julian) constraints
rtchecks0.0.117261
Run-Time Checker for Assertions
resbound0.8.112625
Run goal with resource bounds
mutable_variables1.0.026
Mutable Variables
lcs0.0.126
Longest common subsequence
dia0.126
An interface to .dia-uml-diagrams
rocksdb0.7.022512
SWI-Prolog interface to RocksDB
plrand0.9.1313254
Skippable pseudorandom generator and distributions
plchatscript1.0.942519
(1/1)
Interface to the ChatScript server.
mqtt1.0.522523
mqtt - pub/sub pack for SWI-Prolog using mosquitto
googleclient0.5.232511
SWI-Prolog code for "Login with Google"
dot_dcg0.1.04251
A DCG for a subset of the DOT language
transpiler0.19243
A universal translator for programming languages
prologmud1.2.11118241
Online text adventure game - MUD Server
pljulia0.1.417241
Embedded Julia for SWI Prolog
pl_omdb0.5.08244
API interface to OMDB (Open Movie Database)
link_grammar_prolog4.1.0.322420
A binding to use the Link Grammar library from SWI-Prolog
cplint_datasets1.024
Dataset for machine learning with cplint
bddem4.3.110243
A library for manipulating Binary Decision Diagrams
rtp_qsndqs0.322321
Real-time persistent queues and deques.
plsmf0.5.08239
Standard MIDI File reading
format_spec0.0.212322
Parse and check format/2 specifications
edcg0.9.01233
(1/1)
Extended DCG
unionfind1.0.022
Optimal implementation of the union-find algorithm in CHR
thousands0.2.032217
(0/1)
Thousands separator for large integers
pubmed0.0.432211
Access pubmed publication records
debug_call1.132210
Debugging with calls
cclab0.1.513225
Continuations lab
b_real0.432210
Interface predicates to commonly used R functions.
pepl2.14218
Parameter estimation for SLP with the Failure Adjusted Maximisation algorithm.
nan_common1.222117
Common operations (validation, etc.)
ffimatrix0.1.07213
Operations with matrices using Prolog and C
eggdrop1.2.11116213
Hook up to an existing IRC Client called an Eggdrop
switex0.0.762014
Literate programming with LaTeX and Prolog
readability_parser0.0.432011
Readability Parser API
hdt0.552013
Access RDF HDT files
predicate_streams1.2.11113192
Implement your own Abstract Predicate Streams
number_to_word0.4.251914
Integer to English word conversions
rtg0.0.711187
Regular Tree Grammer validator
roman0.1.018
Roman numerals
dotcloud0.0.211812
Conveniences for running on dotCloud
dirtree1.0.021814
load XML of directory content
sindice0.0.531710
Access to Sindice semantic web search engine
simple_web0.3.05177
Microframework for building websites
plmake0.0.311712
Prolog makefile-like system
miser0.0.117
Build self-optimizing predicates
fcgi0.9.017
fcgi - Fast Common Gateway Interface (FastCGI) library for Prolog
clitable1.0.86172
Pretty unicode tables for the CLI with Prolog
xsd0.1.641611
XML Schema validation with Prolog
with_state0.0.56168
Stateful computations with records
uuid1.1.021614
Generating and parsing version 4 UUIDs
unified_diff0.0.116
Parse and generate unified diffs
r_session1.111615
Interface to an R process
plasticsearch0.121614
Elasticsearch client API
dictoo1.2.11112162
Dict-like OO Syntax
xlisting1.1.11811152
Selective Interactive Non-Deterministic Tracing
sparqlprog0.1.28154
Logic programming with SPARQL
pinyin0.1.55159
Parsing and generation of Hanyu Pinyin
odict0.2.651510
Unifier over feature structures based on attributed variables
mpi1.05151
Porting of the LAMMPI library of Yap Prolog to SWI-Prolog
biomake0.1.56154
Prolog makefile-like system
plumdrum0.0.63144
Parsing of Humdrum/Kern symbolic music file format
phil_datasets1.05144
Dataset for machine learning with phil
nan_numerics_prime1.2.54149
Nan.Numerics.Prime - A simple prime number library
lib2.210142
Predicate based code development
index_util0.0.21147
Prolog index utils
hashtbl0.0.211413
Pure and impure hash tables
gvar_syntax1.2.11112142
Global Variable Syntax
fnotation0.0.321411
Function notation for Prolog
each_call_cleanup1.1.11810141
Each Call Redo Setup and Cleanup
chan0.2.014
Directional channels for thread communication
rdet0.0.113
Runtime determinacy checker
s_expression1.2.1119122
Utilities for Handling of S-Expression Lisp/Scheme-Like forms and parsing of KIF, GDL, PDDL, CLIF
msgpack0.1.64126
DCG for packing & unpacking of MessagePack data to/from bytes
loop_check1.1.1189122
New simple loop checking
instant_prolog_docs1.2.1117123
Magically document prolog source files based on predicate and variable naming conventions
inotify0.9.111211
Access Linux inotify API to watch file system changes
http2_client1.0.06123
An HTTP/2 client
hook_hybrid1.1.11811121
Hook assert retract call of *specific* predicates
file_utilities0.112
File system related utilities
css_write1.0.011211
DCG for generating CSS
app0.112
Prolog Application Server
twitter0.1011
(1/1)
A pack to access the twitter api
race0.1.07111
Client for the SOAP interface of the Attempto Reasoner RACE
prologmud_I71.2.1118113
PrologMUD I7 (NomicMU!) with small Adventure Games in Prolog using the CHAT80 Prolog natural language application
plfann0.0.24113
SWI-Prolog for "Fast Artificial Neural Network Library"
no_repeats1.1.1187112
New ways to avoid duplicate solutions
mtx0.21115
Working with data matrices
logicmoo_utils1.2.1118112
Common predicates that are used throughout LogicMOO Software
geoip0.9.01113
Access GeoIP library
fluents0.1.011
Access all solutions of a goal without backtracking
web0.1.11107
Easy web client
prism0.2.14106
Run PRISM as a child process
edcgs0.1.33107
Extended Definite Clause Grammars
clause_attvars1.1.1187101
An alternate interface to the clause database to allow attributed variables to be asserted
ape6.7.01102
Parser for Attempto Controlled English (ACE)
with_open_options1.2.11692
Utilities to open various objects for read/write
upsh2.4393
Unix to Prolog shell.
term_diff0.0.1197
slack_prolog1.1.118198
Prolog interface to Slack http://www.slack.com
log4p0.0.29
Logging for Prolog
ldap4pl0.1198
LDAP interface
graphpl0.1.1393
Graph data structure utilities
fine_upload0.1.5494
HTTP support for file uploading
chess_db0.3295
PGN and chess game databases.
tidylog0.0.18
smtlib0.0.6581
SMT-LIB parser for SWI-Prolog
pha0.1.2286
Probabilistic Horn Abduction
musicxml0.0.2186
MusicXML partial reader
multimodal_dcg1.2.111582
Reduce floundering of DCGs by constraining and narrowing search
midiutils0.0.38
midiutils
mail_merge1.0.0181
Library for performing mail merge
ffi0.18
Dynamically call C functions
xlisting_web1.1.118671
Manipulate and browse prolog runtime over www
with0.0.47
Context managers for SWI Prolog
timeutils0.0.47
Tools for temporally aware programming
tabling_dra1.0.4572
SWI-Prolog interface to Table-handling procedures for the "dra" interpreter. Written by Feliks Kluzniak at UTD (March 2009)
subclause_expansion1.1.118571
More detailed versions of term/goal expansion hooks
resp0.3374
Redis protocol parser and writer
rdf_matcher0.1.3273
RDF matching utils
logicmoo_planners1.1.118273
Various Hybrid HTN Planners speaking PDDLish and OCLh
file_scope1.1.118571
File local scoped efects
evil0.2.3171
(4/4)
Predicates to Further the Cause of Evil
body_reordering1.2.111271
Clause expansion Utils for deciding which order to run Goals in a body
space0.26
Space package
pfd_meta0.16
Probabilistic finite domains meta-interpreter
obo_metadata0.0.4363
RDF vocabulary for OBO metadata ontologies
mime0.5.06
MIME processing library based on maildrop
lib_atts1.1.118361
Common atts.pl interface like https://sicstus.sics.se/sicstus/docs/4.0.0/html/sicstus/lib_002datts.html
indexed_terms1.0.06
Positional access to terms' arguments
httplog0.5.0163
Analyse SWI-Prolog HTTP server log files
graphql0.0.16
GraphQL Prolog Library
dictype0.0.26
Concise dict type definitions
consul_client0.0.4263
Consul Client
ciao0.0.16
Ciao Prolog compatibility library
chat801.06
Classic CHAT80 Prolog natural language application
simple_bootstrap0.0.2153
Bootstrap Extension to Simple Web
rdf_notification0.15
RDF notification
pub_graph1.1153
Access, cache and visualise citation relations in publications servers
kubepl0.1152
Kubernetes Client
bibtex0.1.6154
Parser and predicates for BibTeX files
with_thread_local1.1.118341
Call a Goal with local assertions
plcomplex0.14
Simple calculation of complex numbers
pcache0.1.04
Persistent answer cache
pager0.1.0141
Send output to user's preferred pager
obo_ro0.0.14
Vocab for OBO Relation Ontology
nan_system_sources1.2.04
Nan.System.Sources - Answer Sources in Prolog
jwt_io0.0.2143
JWT implementation
ical0.1.04
iCalendar DCGs and parsers
fld0.1.0242
Easy assess to term args when loading from ODBC or CSV.
vcard0.0.13
vCard Parser and Predicates
stompl0.13
STOMP client
open_dicts0.0.13
Open dicts for SWI Prolog
obo_core0.0.13
Vocab for upper parts of core OBOs such as GO
notes8000.1.0131
Query phone number data from 800notes.com
nanp0.1.0132
phone numbers in the North American Numbering Plan
lambda_abstractions0.2.1132
Lambda abstractions
hilog1.1.118132
XSB-Prolog's Hilog Syntax in SWI-Prolog
date_time0.1.1131
Logical arithmetic on dates and times
coworkers0.1.03
Workflow definition as tree of coroutines
pluuid2.0.02
Generating and parsing version 4 UUIDs in Pure Prolog
planner_api1.1.118121
planner_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use planners speaking PDDLish and OCLh
pac4pl0.1121
An SWI-Prolog interface to libPAC
mail_standards0.1.02
Mail IMF and Maildir implementations.
flux1.1.1182
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.
small_adventure_games1.1.81
Small Adventure Games in Prolog using the CHAT80 Prolog natural language application
rtrace0.0.71
Selective Interactive Non-Deterministic Tracing
resp_parse0.11
Redis protocol parser and writer
pddl_valoptic_api1.1.1181
pddl_valoptic_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use PDDL based planners.
graphql-swipl0.0.11
GraphQL Prolog Library
dialect-ciao0.0.11
Ciao Prolog compatibility library
ct_fft0.01
Cooley–Tukey FFT algorithm
call_cleaup_each0.0.11
Call A Goal On Each Redo