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: 303
Version
(#older)
Downloads
tot: 22,079
(#latest)
Rating
(#votes/
#comments)
Title
achelois0.5.073,96268
Collection of tools to make writing scripts in Prolog easier.
mavis0.2.3139952
Optional type declarations
regex0.3.311885490
Regular expressions
list_util0.13.018858182
Predicates for working with lists
logtalk3.37.0656092
Logtalk - Object-Oriented Logic Programming Language
cplint4.5.01805692
A suite of programs for reasoning with probabilistic logic programs
prosqlite1.515535180
(0/1)
An SWI-Prolog interface to SQLite
terminus_store_prolog0.9.9264913
Use the Terminus-Store Rust library from Prolog
lambda1.0.0491
(4/4)
Lambda expressions
real2.011405200
Integrative statistics with R
julian0.1.3637414
Date and time library
func0.4.28266134
(2/2)
Function application and composition
smtp1.0.0526367
An (E)SMTP client for sending mail
tap1.0.11825710
Automated tests via Test Anything Protocol
callgraph0.4.117250116
(1/2)
Predicate call graph visualisation
dcgutils1.1.311241142
DCG related utilities
aleph5192301
Aleph Inductive Logic Programming system
trill5.2.11092261
A tableau probabilistic reasoner in three different versions
simple_template1.3.1920010
Logic-free text (HTML) templates
sldnfdraw1.618173101
SLDNF Draw is a Prolog program that draws SLDNF Trees in LaTeX
plgi1.1.01116626
(1/1)
PLGI - Prolog bindings for GLib/GObject/GIO/GTK+
arouter1.1.14166120
Alternative HTTP path router
yaml0.141652
YAML parser
edcg0.9.1.251653
(1/1)
Extended DCG
db_facts0.5516248
Common db-tables-as-facts and SQL layer for ODBC and proSQLite.
typedef0.1.91015644
(2/2)
Support for type definitions
rdet1.0.1614927
Runtime determinacy checker
quickcheck0.3.0171401
QuickCheck randomized testing
gvterm1.11140109
(1/1)
Show Prolog terms using graphviz
pac1.5.1871362
Anonymous predicates expansion utility
docstore2.0.1513599
Document-oriented database for Prolog
markdown0.0.321256
Markdown parser for SWI-Prolog
matrix1.9.161212
Operations with matrices using prolog and c
spawn0.0.1110
Easy concurrency
graphml0.1.0102
(1/1)
Write GraphML files
djson0.0.3210195
Declarative JSON
tokenize1.0.149737
A simple tokenization library
dict_schema0.0.219390
Dict converter and validator
sort_dict0.0.329288
Sorts dicts by key
plOpenGL0.6.259278
(1/1)
OpenGL Bindings
dcg_util0.3.138921
(1/1)
DCG utility predicates
blog_core1.5.222893
Blog/CMS framework
auc1.010862
Library for computing Areas Under the Receiving Operating Charactersitics and Precision Recall curves
delay0.3.378456
Avoid instantiation errors for built-in predicates
webconsole0.9.118281
(0/1)
Use a browser as HTML console
sparqlprog0.2.9178115
Logic programming with SPARQL
function_expansion0.1.228071
(1/1)
Help for writing function-like macros
pfc1.4.11138772
Pfc -- a package for forward chaining in Prolog
openapi0.177
OpenAPI (Swagger) interface
hello0.0.175
(1/1)
Hello World
type_check1.0.117268
Type System for Prolog based on Hindley-Milner
sparkle0.0.987161
(1/1)
Prolog-friendly interface to SPARQL endpoints
memo0.6.1177120
Persistent memoisation of deterministic predicates
options1.277018
Options handling.
rserve_client1.2.0166911
R Rserve client
refactor0.0.346691
Refactoring Tools for SWI-Prolog
phil1.0.038693
Learning Hierarchical Probabilistic Logic Programs parameters with gradient descent and Expectation Maximization
pack_errors2.156721
Contextual error handling for packs.
odf_sheet0.2.346751
Load and analyze ODF spreadsheets (.ods)
fileutils0.3.510679
Utilities for reading, writing and finding files
bddem4.3.116672
A library for manipulating Binary Decision Diagrams
plcairo1.1.146614
plcairo - Prolog bindings for cairo graphics library
os_lib1.496516
Operating system interaction predicates.
wam_common_lisp1.4.11134643
ANSI Common Lisp implemented in Prolog
recaptcha0.9.226459
reCAPTCHA plugin for SWI-Prolog HTTP framework
genutils0.3.8236413
General miscellaneous utilities
by_unix0.1.616361
An elegance layer to calling unix commands.
bio_db3.119623
Access, use and manage big, biological datasets.
swicli2.0.0106022
SWI-Prolog interface to C/C++/.NET/Mono/Objective-C
logicmoo_base1.4.11139591
LogicMOO - Extends Prolog Programming to support Dynamic Epistemic Logic (DEL) with Constraints
wsdl0.158
Web Service Description Language (WSDL) and SOAP
maybe0.1.135754
The maybe type represents an optional value
amazon_api0.0.325750
Interface to Amazon APIs
xtools0.0.239562
Extended tools for Prolog
wordnet0.9.345611
Access to WordNet database
stoics_lib1.175618
A medley of library predicates for stoics packs
wgraph0.655516
Weighted graphs, with plotting via Real
sweet0.1.135348
Sugar to make Prolog a little sweeter
atom_feed0.2.045339
Parse Atom and RSS feeds
bims2.355216
Bayesian inference of model structure.
ffi0.13512
Dynamically call C functions
date_time0.1.325127
Logical arithmetic on dates and times
xsd0.2.07506
XML Schema validation with Prolog
swipe0.2.6115022
Shell pipeline construction with type checking
irc_client1.3.094825
Low level interface to IRC clients
cplint_datasets1.048
Dataset for machine learning with cplint
cplint_r1.0.014464
R plotting predicates for cplint
prologmud_samples1.4.11128453
Online text adventure game - Sample
pljulia0.1.417451
Embedded Julia for SWI Prolog
mlu0.214538
Machine learning utilities
lbfgs1.015451
An interface to call libLBFGS from within SWI-Prolog
condition0.1.134533
Condition system a la Common Lisp
transpiler0.113443
A universal translator for programming languages
tor1.0.444423
Tor: Extensible Search with Hookable Disjunction
lsp_server1.4.417441
A Prolog LSP Server
musicbrainz0.7.0214317
Musicbrainz client library
interpolate0.1.02431
String interpolation
xlibrary0.0.227421
Extended Libraries for Prolog
weblog0.0.564212
(0/1)
weblog
turing1.0.224237
Turing Machine Simulator
rdfs2pl0.0.534220
Compile an RDFS schema to prolog predicates
environ1.041
Demo package with C code, fetching the program environment
plosc0.4.66409
OSC input/output via liblo
logicmoo_nlu1.4.11112401
Various English to Logic Converters - warning: HUGE amount of lexical and test data
ccprism0.1.0204014
Probabilistic programming using delimited continuations
must_trace1.1.11826391
Trace with your eyeballs instead of your fingers
ffimatrix0.1.010391
Operations with matrices using Prolog and C
bio_db_repo20.3.814392
Data package for bio_db.
debug_call1.35382
Debugging with calls
assertions0.0.126381
Ciao Assertions Reader for SWI-Prolog
hdt0.563725
Access RDF HDT files
bencode0.0.137
Bencoding from BitTorrent protocol
uuid1.1.023432
Generating and parsing version 4 UUIDs
rocksdb0.7.023421
SWI-Prolog interface to RocksDB
plml2.0.3163410
Prolog-Matlab bridge
julian_lang_en0.0.213433
Parse English language phrases into library(julian) constraints
jolog0.0.313424
Concurrency via join calculus
semantria0.0.433323
Use Semantria natural language API
prologmud1.4.11120331
Online text adventure game - MUD Server
mqtt1.0.523331
mqtt - pub/sub pack for SWI-Prolog using mosquitto
uri_qq0.3.033221
URI quasiquotations
link_grammar_prolog4.1.0.323228
A binding to use the Link Grammar library from SWI-Prolog
spuds1.110311
Persistent, user code inclusive, documentation server for linux
plsmf0.5.083117
Standard MIDI File reading
plmidi0.7.07318
Interface to Mac OS X MIDI system
plchatscript1.0.943125
(1/1)
Interface to the ChatScript server.
googleclient0.5.233111
SWI-Prolog code for "Login with Google"
dictoo1.3.11114316
Dict-like OO Syntax
rtp_qsndqs0.323028
Real-time persistent queues and deques.
rtchecks0.0.119301
Run-Time Checker for Assertions
mtx0.54301
Working with data matrices
index_util0.0.213023
Prolog index utils
http2_client1.0.063021
An HTTP/2 client
gvar_syntax1.3.11114306
Global Variable Syntax
simple_web0.3.162911
Microframework for building websites
resbound0.8.112928
Run goal with resource bounds
pubmed0.0.432918
Access pubmed publication records
plrand0.9.1313298
Skippable pseudorandom generator and distributions
lcs0.0.129
Longest common subsequence
b_real0.432917
Interface predicates to commonly used R functions.
sql_compiler0.1.428
Prolog to SQL compiler
gpc1.2.03288
Generic polygon clipper
eggdrop1.4.11118281
Hook up to an existing IRC Client called an Eggdrop
dia0.128
An interface to .dia-uml-diagrams
format_spec0.0.212726
Parse and check format/2 specifications
dot_dcg0.1.04271
A DCG for a subset of the DOT language
roman0.1.026
Roman numerals
predicate_streams1.4.11114261
Implement your own Abstract Predicate Streams
pl_omdb0.5.08266
API interface to OMDB (Open Movie Database)
mutable_variables1.0.026
Mutable Variables
lib2.614262
Predicate based code development
dirtree1.0.13268
Load XML of directory content.
thousands0.2.032520
(0/1)
Thousands separator for large integers
instant_prolog_docs1.4.1119251
Magically document prolog source files based on predicate and variable naming conventions
inotify0.9.112524
Access Linux inotify API to watch file system changes
hashtbl0.0.212524
Pure and impure hash tables
css_write1.0.012524
DCG for generating CSS
clitable1.0.862510
Pretty unicode tables for the CLI with Prolog
cclab0.1.513258
Continuations lab
biomake0.1.58256
Prolog makefile-like system
xlisting1.2.11115242
Selective Interactive Non-Deterministic Tracing
nan_common1.222420
Common operations (validation, etc.)
readability_parser0.0.432314
Readability Parser API
number_to_word0.4.252318
Integer to English word conversions
unionfind1.0.022
Optimal implementation of the union-find algorithm in CHR
rtg0.0.7112211
Regular Tree Grammer validator
phil_datasets1.06224
Dataset for machine learning with phil
pepl2.14229
Parameter estimation for SLP with the Failure Adjusted Maximisation algorithm.
multimodal_dcg1.4.1116221
Reduce floundering of DCGs by constraining and narrowing search
logicmoo_utils1.2.11114224
Common predicates that are used throughout LogicMOO Software
fnotation0.0.322219
Function notation for Prolog
with_state0.0.562113
Stateful computations with records
switex0.0.762115
Literate programming with LaTeX and Prolog
sindice0.0.532114
Access to Sindice semantic web search engine
prologmud_I71.2.11112213
PrologMUD I7 (NomicMU!) with small Adventure Games in Prolog using the CHAT80 Prolog natural language application
nan_numerics_prime1.2.542116
Nan.Numerics.Prime - A simple prime number library
jwt_io0.0.23217
JWT implementation
plfann0.0.24203
SWI-Prolog for "Fast Artificial Neural Network Library"
plcal0.0.55201
Programming Calendar
geoip0.9.01203
Access GeoIP library
file_utilities0.120
File system related utilities
dotcloud0.0.212014
Conveniences for running on dotCloud
unified_diff0.0.119
Parse and generate unified diffs
rdf_matcher0.1.531912
RDF matching utils
miser0.0.119
Build self-optimizing predicates
fcgi0.9.019
fcgi - Fast Common Gateway Interface (FastCGI) library for Prolog
chat801.019
Classic CHAT80 Prolog natural language application
odict0.2.651813
Unifier over feature structures based on attributed variables
graphpl0.1.16182
Graph data structure utilities
chess_db0.321814
PGN and chess game databases.
ape6.7.01182
Parser for Attempto Controlled English (ACE)
web0.1.111714
Easy web client
s_expression1.2.1119177
Utilities for Handling of S-Expression Lisp/Scheme-Like forms and parsing of KIF, GDL, PDDL, CLIF
plumdrum0.0.63177
Parsing of Humdrum/Kern symbolic music file format
plmake0.0.311712
Prolog makefile-like system
plasticsearch0.121715
Elasticsearch client API
pinyin0.1.551711
Parsing and generation of Hanyu Pinyin
mathml0.210171
Translates mathematical expressions to compounds that can be used by html//1 (SWISH) or html//3 (normal SWIPL, with pack http/html_write).
ldap4pl0.111716
LDAP interface
dpath0.5.114176
Directory traversal module
dcg4pt0.2.03173
DCG for Parse Trees
twitter0.1016
(1/1)
A pack to access the twitter api
timeutils0.0.416
Tools for temporally aware programming
r_session1.111615
Interface to an R process
pha0.1.221614
Probabilistic Horn Abduction
open_dicts0.0.116
Open dicts for SWI Prolog
msgpack0.1.641610
DCG for packing & unpacking of MessagePack data to/from bytes
mpi1.05161
Porting of the LAMMPI library of Yap Prolog to SWI-Prolog
each_call_cleanup1.1.11810161
Each Call Redo Setup and Cleanup
chan0.2.016
Directional channels for thread communication
upsh2.54154
Unix to Prolog shell.
sparqlprog_wikidata0.0.32157
SPARQLprog bindings for WikiData
slack_prolog1.1.11811514
Prolog interface to Slack http://www.slack.com
musicxml0.0.211513
MusicXML partial reader
graphql0.0.115
GraphQL Prolog Library
hook_hybrid1.1.11812142
Hook assert retract call of *specific* predicates
fluents0.1.21143
Access all solutions of a goal without backtracking
bousi_pack1.0.03141
On my way to a SWISH enabled BPL - a FLI exercise
body_reordering1.4.1114142
Clause expansion Utils for deciding which order to run Goals in a body
with_open_options1.2.116136
Utilities to open various objects for read/write
with0.0.413
Context managers for SWI Prolog
smtlib0.0.65136
SMT-LIB parser for SWI-Prolog
race0.1.07131
Client for the SOAP interface of the Attempto Reasoner RACE
prism0.2.14139
Run PRISM as a child process
no_repeats1.1.1187134
New ways to avoid duplicate solutions
log4p0.0.213
Logging for Prolog
httplog0.5.01133
Analyse SWI-Prolog HTTP server log files
fine_upload0.1.54138
HTTP support for file uploading
loop_check1.1.1189122
New simple loop checking
app0.112
Prolog Application Server
xlisting_web1.1.1186115
Manipulate and browse prolog runtime over www
vcard0.0.111
vCard Parser and Predicates
simple_bootstrap0.0.21119
Bootstrap Extension to Simple Web
mail_merge1.0.01111
Library for performing mail merge
file_scope1.1.1185111
File local scoped efects
clause_attvars1.1.1187111
An alternate interface to the clause database to allow attributed variables to be asserted
canny_tudor0.5.16112
Canny bag o' Tudor
bio_analytics0.32116
Computational biology data analytics.
tidylog0.0.110
term_diff0.0.11108
subclause_expansion1.1.1185101
More detailed versions of term/goal expansion hooks
space0.210
Space package
lambda_abstractions0.2.11109
Lambda abstractions
flux1.1.11810
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.
consul_client0.0.42107
Consul Client
with_thread_local1.2.111495
Call a Goal with local assertions
resp0.3396
Redis protocol parser and writer
pub_graph1.1197
Access, cache and visualise citation relations in publications servers
plplot0.0.1195
A library to plot data using gnuplot.
pfd_meta0.19
Probabilistic finite domains meta-interpreter
mime0.5.09
MIME processing library based on maildrop
lib_atts1.1.118391
Common atts.pl interface like https://sicstus.sics.se/sicstus/docs/4.0.0/html/sicstus/lib_002datts.html
indexed_terms1.0.09
Positional access to terms' arguments
fld0.1.0392
Easy assess to term args when loading from ODBC or CSV.
ciao0.0.19
Ciao Prolog compatibility library
plcomplex0.18
Simple calculation of complex numbers
obo_metadata0.0.4385
RDF vocabulary for OBO metadata ontologies
midiutils0.0.38
midiutils
logicmoo_planners1.1.118284
Various Hybrid HTN Planners speaking PDDLish and OCLh
libssh0.9.1285
Provide an embedded SSH server
lazy_streams0.5.08
Lazy Stream Generators
ical0.1.08
iCalendar DCGs and parsers
dictype0.0.28
Concise dict type definitions
bibtex0.1.6187
Parser and predicates for BibTeX files
tabling_dra1.0.4572
SWI-Prolog interface to Table-handling procedures for the "dra" interpreter. Written by Feliks Kluzniak at UTD (March 2009)
rdf_notification0.17
RDF notification
quantity0.1571
Parse quantities like "1.5 kg" and return some formatting information.
planner_api1.1.118374
planner_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use planners speaking PDDLish and OCLh
pcache0.1.07
Persistent answer cache
obo_ro0.0.17
Vocab for OBO Relation Ontology
nan_system_sources1.2.07
Nan.System.Sources - Answer Sources in Prolog
kubepl0.1174
Kubernetes Client
evil0.2.3171
(4/4)
Predicates to Further the Cause of Evil
clpBNR0.8.2175
CLP over Reals using Interval Arithmetic - includes Rational, Integer and Boolean domains as subsets.
ansi_termx0.0.17
ANSI terminal operations
pager0.1.0161
Send output to user's preferred pager
ontodot0.1.1263
Create dot files from an RDF ontology.
obo_core0.0.16
Vocab for upper parts of core OBOs such as GO
hilog1.1.118165
XSB-Prolog's Hilog Syntax in SWI-Prolog
pluuid2.0.05
Generating and parsing version 4 UUIDs in Pure Prolog
plammar1.0.2252
Prolog parser and serialiser written in Prolog
coworkers0.1.05
Workflow definition as tree of coroutines
stompl0.14
STOMP client
spotify0.1.04
Use the Spotify API from Prolog.
pac4pl0.1141
An SWI-Prolog interface to libPAC
notes8000.1.0141
Query phone number data from 800notes.com
nanp0.1.0143
phone numbers in the North American Numbering Plan
union_find1.0.03
A union-find algorithm implementation for SWI-Prolog
ontoweb0.0.4132
Show an ontology through a Web service.
matrix_utls1.1132
Matrix utilities: Kronecker (Tensor), Hadamard, and matrices creation/multiplications
mail_standards0.1.03
Mail IMF and Maildir implementations.
identity0.2.23
Registration, login, and role management
wumpus1.0.01
Hunt The Wumpus
telegrambot0.0.21
API for Telegram
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.
imodule0.0.11
Support for modules from the server.
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