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: 298
Version
(#older)
Downloads
tot: 18,347
(#latest)
Rating
(#votes/
#comments)
Title
achelois0.5.072,73856
Collection of tools to make writing scripts in Prolog easier.
regex0.3.311863468
Regular expressions
list_util0.13.01874581
Predicates for working with lists
mavis0.2.3137082
Optional type declarations
cplint4.5.01755142
A suite of programs for reasoning with probabilistic logic programs
prosqlite1.515495140
(0/1)
An SWI-Prolog interface to SQLite
lambda1.0.0446
(4/4)
Lambda expressions
logtalk3.32.0603888
Logtalk - Object-Oriented Logic Programming Language
real2.011374169
Integrative statistics with R
julian0.1.3635714
Date and time library
smtp1.0.0525862
An (E)SMTP client for sending mail
tap1.0.11824810
Automated tests via Test Anything Protocol
func0.4.28246114
(2/2)
Function application and composition
dcgutils1.1.311234135
DCG related utilities
callgraph0.4.11723096
(1/2)
Predicate call graph visualisation
aleph5192021
Aleph Inductive Logic Programming system
trill5.2.1961844
A tableau probabilistic reasoner in three different versions
simple_template1.3.0818219
Logic-free text (HTML) templates
terminus_store_prolog0.7.61317898
Use the Terminus-Store Rust library from Prolog
db_facts0.5515541
Common db-tables-as-facts and SQL layer for ODBC and proSQLite.
arouter1.1.14154109
Alternative HTTP path router
plgi1.1.01115212
(1/1)
PLGI - Prolog bindings for GLib/GObject/GIO/GTK+
typedef0.1.91015038
(2/2)
Support for type definitions
yaml0.141402
YAML parser
quickcheck0.3.0171361
QuickCheck randomized testing
gvterm1.11132101
(1/1)
Show Prolog terms using graphviz
rdet1.0.161308
Runtime determinacy checker
docstore2.0.1512690
Document-oriented database for Prolog
pac1.4.88412511
Anonymous predicates expansion utility
markdown0.0.21117111
Markdown parser for SWI-Prolog
sldnfdraw1.61811442
SLDNF Draw is a Prolog program that draws SLDNF Trees in LaTeX
matrix1.9.161092
Operations with matrices using prolog and c
edcg0.9.011093
(1/1)
Extended DCG
spawn0.0.1106
Easy concurrency
graphml0.1.099
(1/1)
Write GraphML files
djson0.0.329690
Declarative JSON
sort_dict0.0.328985
Sorts dicts by key
dict_schema0.0.218986
Dict converter and validator
blog_core1.5.222862
Blog/CMS framework
delay0.3.378456
Avoid instantiation errors for built-in predicates
auc1.010842
Library for computing Areas Under the Receiving Operating Charactersitics and Precision Recall curves
plOpenGL0.6.258369
(1/1)
OpenGL Bindings
webconsole0.9.118281
(0/1)
Use a browser as HTML console
dcg_util0.3.138221
(1/1)
DCG utility predicates
tokenize1.0.148020
A simple tokenization library
hello0.0.175
(1/1)
Hello World
sparqlprog0.2.917748
Logic programming with SPARQL
function_expansion0.1.227465
(1/1)
Help for writing function-like macros
type_check1.0.117268
Type System for Prolog based on Hindley-Milner
sparkle0.0.987060
(1/1)
Prolog-friendly interface to SPARQL endpoints
memo0.6.1176817
Persistent memoisation of deterministic predicates
refactor0.0.344671
Refactoring Tools for SWI-Prolog
options1.276614
Options handling.
fileutils0.3.510657
Utilities for reading, writing and finding files
pfc1.2.11134642
Pfc -- a package for forward chaining in Prolog
pack_errors2.156317
Contextual error handling for packs.
rserve_client1.2.015614
R Rserve client
os_lib1.496112
Operating system interaction predicates.
odf_sheet0.2.346145
Load and analyze ODF spreadsheets (.ods)
recaptcha0.9.226055
reCAPTCHA plugin for SWI-Prolog HTTP framework
plcairo1.1.14608
plcairo - Prolog bindings for cairo graphics library
by_unix0.1.616058
An elegance layer to calling unix commands.
genutils0.3.823587
General miscellaneous utilities
wsdl0.157
Web Service Description Language (WSDL) and SOAP
swicli2.0.0105719
SWI-Prolog interface to C/C++/.NET/Mono/Objective-C
xtools0.0.238552
Extended tools for Prolog
bio_db3.018555
Access, use and manage big, biological datasets.
wam_common_lisp1.2.111295311
ANSI Common Lisp implemented in Prolog
maybe0.1.135350
The maybe type represents an optional value
stoics_lib1.175214
A medley of library predicates for stoics packs
bddem4.3.113522
A library for manipulating Binary Decision Diagrams
atom_feed0.2.045238
Parse Atom and RSS feeds
sweet0.1.135146
Sugar to make Prolog a little sweeter
wordnet0.9.34509
Access to WordNet database
phil1.0.029503
Learning Hierarchical Probabilistic Logic Programs parameters with gradient descent and Expectation Maximization
logicmoo_base1.2.11135507
LogicMOO - Extends Prolog Programming to support Dynamic Epistemic Logic (DEL) with Constraints
amazon_api0.0.325043
Interface to Amazon APIs
swipe0.2.6114921
Shell pipeline construction with type checking
bims2.354913
Bayesian inference of model structure.
wgraph0.65478
Weighted graphs, with plotting via Real
irc_client1.3.094724
Low level interface to IRC clients
xsd0.2.07463
XML Schema validation with Prolog
tor1.0.444423
Tor: Extensible Search with Hookable Disjunction
musicbrainz0.7.0214216
Musicbrainz client library
mlu0.214235
Machine learning utilities
condition0.1.134230
Condition system a la Common Lisp
xlibrary0.0.226411
Extended Libraries for Prolog
weblog0.0.564112
(0/1)
weblog
turing1.0.224136
Turing Machine Simulator
prologmud_samples1.2.11126411
Online text adventure game - Sample
cplint_datasets1.041
Dataset for machine learning with cplint
rdfs2pl0.0.534018
Compile an RDFS schema to prolog predicates
environ1.040
Demo package with C code, fetching the program environment
plosc0.4.66398
OSC input/output via liblo
lbfgs1.015391
An interface to call libLBFGS from within SWI-Prolog
ccprism0.1.0203812
Probabilistic programming using delimited continuations
cplint_r1.0.0103617
R plotting predicates for cplint
bencode0.0.136
Bencoding from BitTorrent protocol
transpiler0.112353
A universal translator for programming languages
pljulia0.1.417351
Embedded Julia for SWI Prolog
must_trace1.1.11826351
Trace with your eyeballs instead of your fingers
bio_db_repo19.5.713354
Data package for bio_db.
assertions0.0.124351
Ciao Assertions Reader for SWI-Prolog
interpolate0.1.02341
String interpolation
plml2.0.316339
Prolog-Matlab bridge
julian_lang_en0.0.213332
Parse English language phrases into library(julian) constraints
uri_qq0.3.033221
URI quasiquotations
hdt0.553225
Access RDF HDT files
ffimatrix0.1.010321
Operations with matrices using Prolog and C
debug_call1.243210
Debugging with calls
semantria0.0.433121
Use Semantria natural language API
prologmud1.2.11118311
Online text adventure game - MUD Server
spuds1.09303
Persistent, user code inclusive, documentation server for linux
rocksdb0.7.023017
SWI-Prolog interface to RocksDB
plchatscript1.0.943024
(1/1)
Interface to the ChatScript server.
link_grammar_prolog4.1.0.323026
A binding to use the Link Grammar library from SWI-Prolog
jolog0.0.313020
Concurrency via join calculus
googleclient0.5.233011
SWI-Prolog code for "Login with Google"
date_time0.1.32306
Logical arithmetic on dates and times
rtchecks0.0.118291
Run-Time Checker for Assertions
plsmf0.5.082915
Standard MIDI File reading
plrand0.9.1313298
Skippable pseudorandom generator and distributions
plmidi0.7.07296
Interface to Mac OS X MIDI system
sql_compiler0.1.428
Prolog to SQL compiler
pubmed0.0.432817
Access pubmed publication records
lcs0.0.128
Longest common subsequence
resbound0.8.112726
Run goal with resource bounds
mqtt1.0.522725
mqtt - pub/sub pack for SWI-Prolog using mosquitto
lsp_server1.4.115271
A Prolog LSP Server
ffi0.12272
Dynamically call C functions
dia0.127
An interface to .dia-uml-diagrams
b_real0.432715
Interface predicates to commonly used R functions.
uuid1.1.022624
Generating and parsing version 4 UUIDs
simple_web0.3.16268
Microframework for building websites
mutable_variables1.0.026
Mutable Variables
gpc1.2.03267
Generic polygon clipper
eggdrop1.2.11116268
Hook up to an existing IRC Client called an Eggdrop
dot_dcg0.1.04261
A DCG for a subset of the DOT language
rtp_qsndqs0.322523
Real-time persistent queues and deques.
pl_omdb0.5.08255
API interface to OMDB (Open Movie Database)
format_spec0.0.212524
Parse and check format/2 specifications
dirtree1.0.13257
Load XML of directory content.
thousands0.2.032419
(0/1)
Thousands separator for large integers
predicate_streams1.2.11113247
Implement your own Abstract Predicate Streams
mtx0.432412
Working with data matrices
gvar_syntax1.2.11113248
Global Variable Syntax
dictoo1.2.111122410
Dict-like OO Syntax
cclab0.1.513247
Continuations lab
xlisting1.2.11115232
Selective Interactive Non-Deterministic Tracing
roman0.1.023
Roman numerals
nan_common1.222319
Common operations (validation, etc.)
unionfind1.0.022
Optimal implementation of the union-find algorithm in CHR
lib2.513225
Predicate based code development
clitable1.0.86227
Pretty unicode tables for the CLI with Prolog
biomake0.1.57225
Prolog makefile-like system
readability_parser0.0.432112
Readability Parser API
pepl2.14218
Parameter estimation for SLP with the Failure Adjusted Maximisation algorithm.
number_to_word0.4.252116
Integer to English word conversions
index_util0.0.212114
Prolog index utils
hashtbl0.0.212120
Pure and impure hash tables
switex0.0.762014
Literate programming with LaTeX and Prolog
sindice0.0.532013
Access to Sindice semantic web search engine
prologmud_I71.2.11111203
PrologMUD I7 (NomicMU!) with small Adventure Games in Prolog using the CHAT80 Prolog natural language application
with_state0.0.561911
Stateful computations with records
rtg0.0.711198
Regular Tree Grammer validator
nan_numerics_prime1.2.541914
Nan.Numerics.Prime - A simple prime number library
dotcloud0.0.211913
Conveniences for running on dotCloud
plfann0.0.24183
SWI-Prolog for "Fast Artificial Neural Network Library"
miser0.0.118
Build self-optimizing predicates
inotify0.9.111817
Access Linux inotify API to watch file system changes
http2_client1.0.06189
An HTTP/2 client
fcgi0.9.018
fcgi - Fast Common Gateway Interface (FastCGI) library for Prolog
unified_diff0.0.117
Parse and generate unified diffs
plmake0.0.311712
Prolog makefile-like system
phil_datasets1.05174
Dataset for machine learning with phil
odict0.2.651712
Unifier over feature structures based on attributed variables
instant_prolog_docs1.2.1117178
Magically document prolog source files based on predicate and variable naming conventions
file_utilities0.117
File system related utilities
css_write1.0.011716
DCG for generating CSS
r_session1.111615
Interface to an R process
plumdrum0.0.63166
Parsing of Humdrum/Kern symbolic music file format
plasticsearch0.121614
Elasticsearch client API
pinyin0.1.551610
Parsing and generation of Hanyu Pinyin
ldap4pl0.111615
LDAP interface
graphpl0.1.15162
Graph data structure utilities
fnotation0.0.321613
Function notation for Prolog
chess_db0.321612
PGN and chess game databases.
twitter0.1015
(1/1)
A pack to access the twitter api
s_expression1.2.1119155
Utilities for Handling of S-Expression Lisp/Scheme-Like forms and parsing of KIF, GDL, PDDL, CLIF
pha0.1.221513
Probabilistic Horn Abduction
open_dicts0.0.115
Open dicts for SWI Prolog
msgpack0.1.64159
DCG for packing & unpacking of MessagePack data to/from bytes
mpi1.05151
Porting of the LAMMPI library of Yap Prolog to SWI-Prolog
logicmoo_utils1.2.11110152
Common predicates that are used throughout LogicMOO Software
geoip0.9.01153
Access GeoIP library
web0.1.111411
Easy web client
timeutils0.0.414
Tools for temporally aware programming
slack_prolog1.1.11811413
Prolog interface to Slack http://www.slack.com
multimodal_dcg1.2.1115148
Reduce floundering of DCGs by constraining and narrowing search
each_call_cleanup1.1.11810141
Each Call Redo Setup and Cleanup
chan0.2.014
Directional channels for thread communication
ape6.7.01142
Parser for Attempto Controlled English (ACE)
hook_hybrid1.1.11812131
Hook assert retract call of *specific* predicates
graphql0.0.113
GraphQL Prolog Library
chat801.013
Classic CHAT80 Prolog natural language application
bousi_pack1.0.03131
On my way to a SWISH enabled BPL - a FLI exercise
rdf_matcher0.1.53125
RDF matching utils
race0.1.07121
Client for the SOAP interface of the Attempto Reasoner RACE
prism0.2.14128
Run PRISM as a child process
no_repeats1.1.1187123
New ways to avoid duplicate solutions
musicxml0.0.211210
MusicXML partial reader
loop_check1.1.1189122
New simple loop checking
fluents0.1.21121
Access all solutions of a goal without backtracking
app0.112
Prolog Application Server
with_open_options1.2.116114
Utilities to open various objects for read/write
with0.0.411
Context managers for SWI Prolog
upsh2.43115
Unix to Prolog shell.
smtlib0.0.65114
SMT-LIB parser for SWI-Prolog
fine_upload0.1.54116
HTTP support for file uploading
dcg4pt0.2.03113
DCG for Parse Trees
vcard0.0.110
vCard Parser and Predicates
plcal0.0.43102
Programming Calendar
mathml0.0.84101
Translates mathematical expressions to compounds that can be used by html//1.
log4p0.0.210
Logging for Prolog
clause_attvars1.1.1187101
An alternate interface to the clause database to allow attributed variables to be asserted
xlisting_web1.1.118693
Manipulate and browse prolog runtime over www
with_thread_local1.2.111495
Call a Goal with local assertions
term_diff0.0.1197
subclause_expansion1.1.118591
More detailed versions of term/goal expansion hooks
sparqlprog_wikidata0.0.3291
SPARQLprog bindings for WikiData
space0.29
Space package
simple_bootstrap0.0.2197
Bootstrap Extension to Simple Web
mail_merge1.0.0191
Library for performing mail merge
httplog0.5.0193
Analyse SWI-Prolog HTTP server log files
file_scope1.1.118591
File local scoped efects
dpath0.5.8295
Directory traversal module
tidylog0.0.18
pub_graph1.1186
Access, cache and visualise citation relations in publications servers
pfd_meta0.18
Probabilistic finite domains meta-interpreter
midiutils0.0.38
midiutils
lib_atts1.1.118381
Common atts.pl interface like https://sicstus.sics.se/sicstus/docs/4.0.0/html/sicstus/lib_002datts.html
indexed_terms1.0.08
Positional access to terms' arguments
fld0.1.0382
Easy assess to term args when loading from ODBC or CSV.
consul_client0.0.4285
Consul Client
bio_analytics0.3283
Computational biology data analytics.
tabling_dra1.0.4572
SWI-Prolog interface to Table-handling procedures for the "dra" interpreter. Written by Feliks Kluzniak at UTD (March 2009)
resp0.3374
Redis protocol parser and writer
obo_metadata0.0.4374
RDF vocabulary for OBO metadata ontologies
mime0.5.07
MIME processing library based on maildrop
logicmoo_planners1.1.118273
Various Hybrid HTN Planners speaking PDDLish and OCLh
lambda_abstractions0.2.1176
Lambda abstractions
ical0.1.07
iCalendar DCGs and parsers
evil0.2.3171
(4/4)
Predicates to Further the Cause of Evil
dictype0.0.27
Concise dict type definitions
ciao0.0.17
Ciao Prolog compatibility library
canny_tudor0.4.0471
Canny bag o' Tudor
body_reordering1.2.111271
Clause expansion Utils for deciding which order to run Goals in a body
bibtex0.1.6176
Parser and predicates for BibTeX files
rdf_notification0.16
RDF notification
plplot0.0.1165
A library to plot data using gnuplot.
planner_api1.1.118264
planner_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use planners speaking PDDLish and OCLh
obo_ro0.0.16
Vocab for OBO Relation Ontology
nan_system_sources1.2.06
Nan.System.Sources - Answer Sources in Prolog
kubepl0.1163
Kubernetes Client
jwt_io0.0.2165
JWT implementation
flux1.1.1186
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.
plcomplex0.15
Simple calculation of complex numbers
pcache0.1.05
Persistent answer cache
pager0.1.0151
Send output to user's preferred pager
ontodot0.1.1252
Create dot files from an RDF ontology.
obo_core0.0.15
Vocab for upper parts of core OBOs such as GO
lazy_streams0.5.05
Lazy Stream Generators
clpBNR0.8.2153
CLP over Reals using Interval Arithmetic - includes Rational, Integer and Boolean domains as subsets.
hilog1.1.118143
XSB-Prolog's Hilog Syntax in SWI-Prolog
coworkers0.1.04
Workflow definition as tree of coroutines
ansi_termx0.0.14
ANSI terminal operations
stompl0.13
STOMP client
pluuid2.0.03
Generating and parsing version 4 UUIDs in Pure Prolog
plammar1.0.0132
Prolog parser and serialiser written in Prolog
pac4pl0.1131
An SWI-Prolog interface to libPAC
openapi0.13
OpenAPI (Swagger) interface
notes8000.1.0131
Query phone number data from 800notes.com
nanp0.1.0132
phone numbers in the North American Numbering Plan
spotify0.1.02
Use the Spotify API from Prolog.
ontoweb0.0.4121
Show an ontology through a Web service.
mail_standards0.1.02
Mail IMF and Maildir implementations.
identity0.2.22
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