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: 288
Version
(#older)
Downloads
tot: 13,018
(#latest)
Rating
(#votes/
#comments)
Title
achelois0.5.0746930
Collection of tools to make writing scripts in Prolog easier.
aleph5171631
Aleph Inductive Logic Programming system
amazon_api0.0.324841
Interface to Amazon APIs
ape6.7.01122
Parser for Attempto Controlled English (ACE)
app0.112
Prolog Application Server
arouter1.1.1414499
Alternative HTTP path router
assertions0.0.121321
Ciao Assertions Reader for SWI-Prolog
atom_feed0.2.044632
Parse Atom and RSS feeds
auc1.010782
Library for computing Areas Under the Receiving Operating Charactersitics and Precision Recall curves
b_real0.432513
Interface predicates to commonly used R functions.
bddem4.3.1103110
A library for manipulating Binary Decision Diagrams
bencode0.0.133
Bencoding from BitTorrent protocol
bibtex0.1.6165
Parser and predicates for BibTeX files
bims2.35426
Bayesian inference of model structure.
bio_analytics0.3261
Computational biology data analytics.
bio_db3.018511
Access, use and manage big, biological datasets.
bio_db_repo19.5.713332
Data package for bio_db.
biomake0.1.57185
Prolog makefile-like system
blog_core1.5.121818
Blog/CMS framework
body_reordering1.2.111271
Clause expansion Utils for deciding which order to run Goals in a body
bousi_pack1.0.03101
On my way to a SWISH enabled BPL - a FLI exercise
by_unix0.1.615957
An elegance layer to calling unix commands.
call_cleaup_each0.0.11
Call A Goal On Each Redo
callgraph0.4.11721076
(1/2)
Predicate call graph visualisation
cclab0.1.513247
Continuations lab
ccprism0.1.020337
Probabilistic programming using delimited continuations
chan0.2.014
Directional channels for thread communication
chat801.08
Classic CHAT80 Prolog natural language application
chess_db0.32117
PGN and chess game databases.
ciao0.0.16
Ciao Prolog compatibility library
clause_attvars1.1.1187101
An alternate interface to the clause database to allow attributed variables to be asserted
clitable1.0.86183
Pretty unicode tables for the CLI with Prolog
condition0.1.133826
Condition system a la Common Lisp
consul_client0.0.4263
Consul Client
coworkers0.1.04
Workflow definition as tree of coroutines
cplint4.5.01644702
A suite of programs for reasoning with probabilistic logic programs
cplint_datasets1.028
Dataset for machine learning with cplint
cplint_r1.0.0103213
R plotting predicates for cplint
css_write1.0.011211
DCG for generating CSS
ct_fft0.01
Cooley–Tukey FFT algorithm
date_time0.1.1153
Logical arithmetic on dates and times
db_facts0.5515238
Common db-tables-as-facts and SQL layer for ODBC and proSQLite.
dcg4pt0.2.0263
DCG for Parse Trees
dcg_util0.3.135215
(1/1)
DCG utility predicates
dcgutils1.1.31113031
DCG related utilities
debug_call1.24297
Debugging with calls
delay0.3.378456
Avoid instantiation errors for built-in predicates
dia0.126
An interface to .dia-uml-diagrams
dialect-ciao0.0.11
Ciao Prolog compatibility library
dict_schema0.0.218683
Dict converter and validator
dictoo1.2.11112184
Dict-like OO Syntax
dictype0.0.27
Concise dict type definitions
dirtree1.0.13246
Load XML of directory content.
djson0.0.328680
Declarative JSON
docstore2.0.1512286
Document-oriented database for Prolog
dot_dcg0.1.04261
A DCG for a subset of the DOT language
dotcloud0.0.211913
Conveniences for running on dotCloud
dpath0.5.8262
Directory traversal module
each_call_cleanup1.1.11810141
Each Call Redo Setup and Cleanup
edcg0.9.01303
(1/1)
Extended DCG
edcgs0.1.34127
Extended Definite Clause Grammars
eggdrop1.2.11116235
Hook up to an existing IRC Client called an Eggdrop
environ1.037
Demo package with C code, fetching the program environment
evil0.2.3171
(4/4)
Predicates to Further the Cause of Evil
fcgi0.9.017
fcgi - Fast Common Gateway Interface (FastCGI) library for Prolog
ffi0.11142
Dynamically call C functions
ffimatrix0.1.08243
Operations with matrices using Prolog and C
file_scope1.1.118571
File local scoped efects
file_utilities0.113
File system related utilities
fileutils0.3.510635
Utilities for reading, writing and finding files
fine_upload0.1.54105
HTTP support for file uploading
fld0.1.0262
Easy assess to term args when loading from ODBC or CSV.
fluents0.1.21121
Access all solutions of a goal without backtracking
flux1.1.1184
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.
fnotation0.0.321512
Function notation for Prolog
format_spec0.0.212423
Parse and check format/2 specifications
func0.4.28232100
(2/2)
Function application and composition
function_expansion0.1.227364
(1/1)
Help for writing function-like macros
genutils0.3.823576
General miscellaneous utilities
geoip0.9.01143
Access GeoIP library
googleclient0.5.232911
SWI-Prolog code for "Login with Google"
gpc1.1.01121
Generic polygon clipper
graphml0.1.090
(1/1)
Write GraphML files
graphpl0.1.13114
Graph data structure utilities
graphql0.0.18
GraphQL Prolog Library
graphql-swipl0.0.11
GraphQL Prolog Library
gvar_syntax1.2.11112164
Global Variable Syntax
gvterm1.1112392
(1/1)
Show Prolog terms using graphviz
hashtbl0.0.211716
Pure and impure hash tables
hdt0.552013
Access RDF HDT files
hello0.0.175
(1/1)
Hello World
hilog1.1.118143
XSB-Prolog's Hilog Syntax in SWI-Prolog
hook_hybrid1.1.11812131
Hook assert retract call of *specific* predicates
http2_client1.0.06145
An HTTP/2 client
httplog0.5.0173
Analyse SWI-Prolog HTTP server log files
ical0.1.05
iCalendar DCGs and parsers
identity0.2.21
Registration, login, and role management
index_util0.0.21158
Prolog index utils
indexed_terms1.0.07
Positional access to terms' arguments
inotify0.9.111413
Access Linux inotify API to watch file system changes
instant_prolog_docs1.2.1117145
Magically document prolog source files based on predicate and variable naming conventions
interpolate0.1.02321
String interpolation
irc_client1.3.094623
Low level interface to IRC clients
jolog0.0.313020
Concurrency via join calculus
julian0.1.3632214
Date and time library
julian_lang_en0.0.212928
Parse English language phrases into library(julian) constraints
jwt_io0.0.2154
JWT implementation
kubepl0.1152
Kubernetes Client
lambda1.0.0409
(4/4)
Lambda expressions
lambda_abstractions0.2.1143
Lambda abstractions
lazy_streams0.5.05
Lazy Stream Generators
lbfgs1.015381
An interface to call libLBFGS from within SWI-Prolog
lcs0.0.128
Longest common subsequence
ldap4pl0.1198
LDAP interface
lib2.513192
Predicate based code development
lib_atts1.1.118381
Common atts.pl interface like https://sicstus.sics.se/sicstus/docs/4.0.0/html/sicstus/lib_002datts.html
link_grammar_prolog4.1.0.322521
A binding to use the Link Grammar library from SWI-Prolog
list_util0.13.01836364
Predicates for working with lists
log4p0.0.29
Logging for Prolog
logicmoo_base1.2.11135485
LogicMOO - Extends Prolog Programming to support Dynamic Epistemic Logic (DEL) with Constraints
logicmoo_planners1.1.118273
Various Hybrid HTN Planners speaking PDDLish and OCLh
logicmoo_utils1.2.1118112
Common predicates that are used throughout LogicMOO Software
logtalk3.26.0543163
Logtalk - Object-Oriented Logic Programming Language
loop_check1.1.1189122
New simple loop checking
lsp_server1.1.5493
A Prolog LSP Server
mail_merge1.0.0181
Library for performing mail merge
mail_standards0.1.02
Mail IMF and Maildir implementations.
markdown0.0.21112106
Markdown parser for SWI-Prolog
mathml0.0.12
Translates mathematical expressions to compounds that can be used by SWISH html//1.
matrix1.9.16962
Operations with matrices using prolog and c
mavis0.2.3111392
Optional type declarations
maybe0.1.134643
The maybe type represents an optional value
memo0.6.1176716
Persistent memoisation of deterministic predicates
midiutils0.0.38
midiutils
mime0.5.07
MIME processing library based on maildrop
miser0.0.118
Build self-optimizing predicates
mlu0.213629
Machine learning utilities
mpi1.05151
Porting of the LAMMPI library of Yap Prolog to SWI-Prolog
mqtt1.0.522523
mqtt - pub/sub pack for SWI-Prolog using mosquitto
msgpack0.1.64137
DCG for packing & unpacking of MessagePack data to/from bytes
mtx0.43197
Working with data matrices
multimodal_dcg1.2.1115104
Reduce floundering of DCGs by constraining and narrowing search
musicbrainz0.7.0214115
Musicbrainz client library
musicxml0.0.211210
MusicXML partial reader
must_trace1.1.11825321
Trace with your eyeballs instead of your fingers
mutable_variables1.0.026
Mutable Variables
nan_common1.222218
Common operations (validation, etc.)
nan_numerics_prime1.2.541510
Nan.Numerics.Prime - A simple prime number library
nan_system_sources1.2.05
Nan.System.Sources - Answer Sources in Prolog
nanp0.1.0132
phone numbers in the North American Numbering Plan
no_repeats1.1.1187123
New ways to avoid duplicate solutions
notes8000.1.0131
Query phone number data from 800notes.com
number_to_word0.4.252015
Integer to English word conversions
obo_core0.0.14
Vocab for upper parts of core OBOs such as GO
obo_metadata0.0.4363
RDF vocabulary for OBO metadata ontologies
obo_ro0.0.15
Vocab for OBO Relation Ontology
odf_sheet0.2.345741
Load and analyze ODF spreadsheets (.ods)
odict0.2.651712
Unifier over feature structures based on attributed variables
open_dicts0.0.111
Open dicts for SWI Prolog
openapi0.12
OpenAPI (Swagger) interface
options1.27597
Options handling.
os_lib1.49567
Operating system interaction predicates.
pac1.4.8841239
Anonymous predicates expansion utility
pac4pl0.1131
An SWI-Prolog interface to libPAC
pack_errors2.15537
Contextual error handling for packs.
pager0.1.0151
Send output to user's preferred pager
pcache0.1.05
Persistent answer cache
pddl_valoptic_api1.1.1181
pddl_valoptic_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use PDDL based planners.
pepl2.14218
Parameter estimation for SLP with the Failure Adjusted Maximisation algorithm.
pfc1.2.11134602
Pfc -- a package for forward chaining in Prolog
pfd_meta0.17
Probabilistic finite domains meta-interpreter
pha0.1.2297
Probabilistic Horn Abduction
phil1.0.027443
Learning Hierarchical Probabilistic Logic Programs parameters with gradient descent and Expectation Maximization
phil_datasets1.05154
Dataset for machine learning with phil
pinyin0.1.551610
Parsing and generation of Hanyu Pinyin
plOpenGL0.6.258268
(1/1)
OpenGL Bindings
pl_omdb0.5.08255
API interface to OMDB (Open Movie Database)
planner_api1.1.118121
planner_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use planners speaking PDDLish and OCLh
plasticsearch0.121614
Elasticsearch client API
plcairo1.1.03479
plcairo - Prolog bindings for cairo graphics library
plchatscript1.0.942620
(1/1)
Interface to the ChatScript server.
plcomplex0.14
Simple calculation of complex numbers
plfann0.0.24123
SWI-Prolog for "Fast Artificial Neural Network Library"
plgi1.0.61012952
(1/1)
PLGI - Prolog bindings for GLib/GObject/GIO/GTK+
pljulia0.1.417331
Embedded Julia for SWI Prolog
plmake0.0.311712
Prolog makefile-like system
plmidi0.7.07296
Interface to Mac OS X MIDI system
plml2.0.316328
Prolog-Matlab bridge
plosc0.4.66398
OSC input/output via liblo
plplot0.0.11
A library to plot data using gnuplot.
plrand0.9.1313287
Skippable pseudorandom generator and distributions
plsmf0.5.082511
Standard MIDI File reading
plumdrum0.0.63166
Parsing of Humdrum/Kern symbolic music file format
pluuid2.0.03
Generating and parsing version 4 UUIDs in Pure Prolog
predicate_streams1.2.11113214
Implement your own Abstract Predicate Streams
prism0.2.14117
Run PRISM as a child process
prologmud1.2.11118271
Online text adventure game - MUD Server
prologmud_I71.2.1119123
PrologMUD I7 (NomicMU!) with small Adventure Games in Prolog using the CHAT80 Prolog natural language application
prologmud_samples1.2.11126391
Online text adventure game - Sample
prosqlite1.51544893
(0/1)
An SWI-Prolog interface to SQLite
pub_graph1.1175
Access, cache and visualise citation relations in publications servers
pubmed0.0.432817
Access pubmed publication records
quickcheck0.2.3131264
QuickCheck randomized testing
r_session1.111615
Interface to an R process
race0.1.07121
Client for the SOAP interface of the Attempto Reasoner RACE
rdet0.0.118
Runtime determinacy checker
rdf_matcher0.1.5392
RDF matching utils
rdf_notification0.15
RDF notification
rdfs2pl0.0.533614
Compile an RDFS schema to prolog predicates
readability_parser0.0.432112
Readability Parser API
real2.011340135
Integrative statistics with R
recaptcha0.9.226055
reCAPTCHA plugin for SWI-Prolog HTTP framework
refactor0.0.341621
Refactoring Tools for SWI-Prolog
regex0.3.311653258
Regular expressions
resbound0.8.112726
Run goal with resource bounds
resp0.3374
Redis protocol parser and writer
resp_parse0.11
Redis protocol parser and writer
rocksdb0.7.023017
SWI-Prolog interface to RocksDB
roman0.1.020
Roman numerals
rserve_client1.1.0145615
R Rserve client
rtchecks0.0.117261
Run-Time Checker for Assertions
rtg0.0.711187
Regular Tree Grammer validator
rtp_qsndqs0.322321
Real-time persistent queues and deques.
rtrace0.0.71
Selective Interactive Non-Deterministic Tracing
s_expression1.2.1119133
Utilities for Handling of S-Expression Lisp/Scheme-Like forms and parsing of KIF, GDL, PDDL, CLIF
semantria0.0.433121
Use Semantria natural language API
simple_bootstrap0.0.2175
Bootstrap Extension to Simple Web
simple_template1.3.0817513
Logic-free text (HTML) templates
simple_web0.3.16202
Microframework for building websites
sindice0.0.531811
Access to Sindice semantic web search engine
slack_prolog1.1.11811312
Prolog interface to Slack http://www.slack.com
sldnfdraw1.6189321
SLDNF Draw is a Prolog program that draws SLDNF Trees in LaTeX
small_adventure_games1.1.81
Small Adventure Games in Prolog using the CHAT80 Prolog natural language application
smtlib0.0.6592
SMT-LIB parser for SWI-Prolog
smtp1.0.0525458
An (E)SMTP client for sending mail
sort_dict0.0.328682
Sorts dicts by key
space0.29
Space package
sparkle0.0.986858
(1/1)
Prolog-friendly interface to SPARQL endpoints
sparqlprog0.1.392914
Logic programming with SPARQL
sparqlprog_wikidata0.0.14
SPARQLprog bindings for WikiData
spawn0.0.197
Easy concurrency
spuds1.09303
Persistent, user code inclusive, documentation server for linux
sql_compiler0.1.428
Prolog to SQL compiler
stoics_lib1.17457
A medley of library predicates for stoics packs
stompl0.13
STOMP client
subclause_expansion1.1.118571
More detailed versions of term/goal expansion hooks
sweet0.1.135045
Sugar to make Prolog a little sweeter
swicli2.0.0105315
SWI-Prolog interface to C/C++/.NET/Mono/Objective-C
swipe0.2.6114719
Shell pipeline construction with type checking
switex0.0.762014
Literate programming with LaTeX and Prolog
tabling_dra1.0.4572
SWI-Prolog interface to Table-handling procedures for the "dra" interpreter. Written by Feliks Kluzniak at UTD (March 2009)
tap0.4.21421318
Automated tests via Test Anything Protocol
term_diff0.0.1197
thousands0.2.032318
(0/1)
Thousands separator for large integers
tidylog0.0.18
timeutils0.0.49
Tools for temporally aware programming
tokenize0.1.225755
A nascent tokenization library
tor1.0.444423
Tor: Extensible Search with Hookable Disjunction
transpiler0.111303
A universal translator for programming languages
trill5.2.1921631
A tableau probabilistic reasoner in three different versions
turing1.0.223530
Turing Machine Simulator
twitter0.1014
(1/1)
A pack to access the twitter api
type_check1.0.117268
Type System for Prolog based on Hindley-Milner
typedef0.1.91013018
(2/2)
Support for type definitions
unified_diff0.0.117
Parse and generate unified diffs
unionfind1.0.022
Optimal implementation of the union-find algorithm in CHR
upsh2.43104
Unix to Prolog shell.
uri_qq0.3.033221
URI quasiquotations
uuid1.1.021816
Generating and parsing version 4 UUIDs
vcard0.0.15
vCard Parser and Predicates
wam_common_lisp1.2.111274611
ANSI Common Lisp implemented in Prolog
web0.1.11118
Easy web client
webconsole0.9.117978
(0/1)
Use a browser as HTML console
weblog0.0.563912
(0/1)
weblog
wgraph0.65412
Weighted graphs, with plotting via Real
with0.0.49
Context managers for SWI Prolog
with_open_options1.2.116103
Utilities to open various objects for read/write
with_state0.0.561810
Stateful computations with records
with_thread_local1.2.111451
Call a Goal with local assertions
wordnet0.9.34408
Access to WordNet database
wsdl0.153
Web Service Description Language (WSDL) and SOAP
wumpus1.0.01
Hunt The Wumpus
xlibrary0.0.225391
Extended Libraries for Prolog
xlisting1.1.11812172
Selective Interactive Non-Deterministic Tracing
xlisting_web1.1.118671
Manipulate and browse prolog runtime over www
xsd0.1.641813
XML Schema validation with Prolog
xtools0.0.235502
Extended tools for Prolog
yaml0.14842
YAML parser