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: 324
Version
(#older)
Downloads
tot: 28,098
(#latest)
Rating
(#votes/
#comments)
Title
achelois0.5.075,82790
Collection of tools to make writing scripts in Prolog easier.
list_util0.13.0181,619871
Predicates for working with lists
mavis0.2.3131,0092
Optional type declarations
regex0.3.311998603
Regular expressions
cplint4.5.01896832
A suite of programs for reasoning with probabilistic logic programs
terminus_store_prolog0.13.5546682
Use the Terminus-Store Rust library from Prolog
logtalk3.42.07066311
Logtalk - Object-Oriented Logic Programming Language
prosqlite1.61660351
(0/1)
An SWI-Prolog interface to SQLite
lambda1.0.0529
(4/4)
Lambda expressions
real2.11248667
Integrative statistics with R
julian0.1.3748514
Date and time library
simple_template1.3.19316125
Logic-free text (HTML) templates
dcgutils1.1.311299200
DCG related utilities
func0.4.292909
(2/2)
Function application and composition
tap1.0.1192802
Automated tests via Test Anything Protocol
smtp1.0.0527478
An (E)SMTP client for sending mail
aleph5202731
Aleph Inductive Logic Programming system
callgraph0.4.117266132
(1/2)
Predicate call graph visualisation
trill6.0.211426219
A tableau probabilistic reasoner in three different versions
sldnfdraw1.618256184
SLDNF Draw is a Prolog program that draws SLDNF Trees in LaTeX
typedef0.1.91019684
(2/2)
Support for type definitions
db_facts0.5518571
Common db-tables-as-facts and SQL layer for ODBC and proSQLite.
plgi1.1.01117939
(1/1)
PLGI - Prolog bindings for GLib/GObject/GIO/GTK+
markdown0.0.3217857
Markdown parser for SWI-Prolog
edcg0.9.1.3617711
(1/1)
Extended DCG
arouter1.1.14177131
Alternative HTTP path router
matrix1.9.161762
Operations with matrices using prolog and c
yaml0.141732
YAML parser
rdet1.0.2716112
Runtime determinacy checker
gvterm1.11159128
(1/1)
Show Prolog terms using graphviz
docstore2.0.15156120
Document-oriented database for Prolog
pac1.5.7931512
Anonymous predicates expansion utility
sparqlprog0.2.91915051
Logic programming with SPARQL
quickcheck0.3.0171451
QuickCheck randomized testing
auc1.0101252
Library for computing Areas Under the Receiving Operating Charactersitics and Precision Recall curves
prolog_library_collection1.0.85123117
Prolog Library Collection
tokenize1.0.1412060
A simple tokenization library
spawn0.0.1119
Easy concurrency
djson0.0.32119113
Declarative JSON
lsp_server2.2.62611643
A Prolog LSP Server
graphml0.1.0110
(1/1)
Write GraphML files
bddem4.3.1181102
A library for manipulating Binary Decision Diagrams
pfc2.0.3491026
Pfc -- a package for forward chaining in Prolog
dcg_util0.3.1310221
(1/1)
DCG utility predicates
plOpenGL0.6.2510187
(1/1)
OpenGL Bindings
rserve_client1.2.0169840
R Rserve client
phil1.0.044971
Learning Hierarchical Probabilistic Logic Programs
sort_dict0.0.329591
Sorts dicts by key
dictoo2.0.3209430
Dict-like OO Syntax
dict_schema0.0.219491
Dict converter and validator
function_expansion0.1.24923
(1/1)
Help for writing function-like macros
blog_core1.5.222925
Blog/CMS framework
predicate_streams2.0.3209149
Implement your own Abstract Predicate Streams
xsd0.2.18853
XML Schema validation with Prolog
webconsole0.9.118584
(0/1)
Use a browser as HTML console
gvar_syntax2.0.3188529
Global Variable Syntax
delay0.3.378456
Avoid instantiation errors for built-in predicates
openapi0.21834
OpenAPI (Swagger) interface
date_time0.1.338127
Logical arithmetic on dates and times
atom_feed0.2.048167
Parse Atom and RSS feeds
plcairo1.1.148028
plcairo - Prolog bindings for cairo graphics library
options1.38772
Options handling.
logicmoo_nlu2.0.324751
Various English to Logic Converters - warning: HUGE amount of lexical and test data
hello0.0.175
(1/1)
Hello World
wam_common_lisp2.0.339742
ANSI Common Lisp implemented in Prolog
sparkle0.0.987464
(1/1)
Prolog-friendly interface to SPARQL endpoints
odf_sheet0.2.45746
Load and analyze ODF spreadsheets (.ods)
memo0.6.1177322
Persistent memoisation of deterministic predicates
logicmoo_base2.0.346733
LogicMOO - Extends Prolog Programming to support Dynamic Epistemic Logic (DEL) with Constraints
type_check1.0.117268
Type System for Prolog based on Hindley-Milner
pack_errors2.157226
Contextual error handling for packs.
os_lib1.510723
Operating system interaction predicates.
fileutils0.3.5107113
Utilities for reading, writing and finding files
refactor0.0.347701
Refactoring Tools for SWI-Prolog
logicmoo_utils2.0.335693
Common predicates that are used throughout LogicMOO Software
ffi0.13692
Dynamically call C functions
swicli2.0.011683
SWI-Prolog interface to C/C++/.NET/Mono/Objective-C
genutils0.3.8236817
General miscellaneous utilities
index_util0.0.216760
Prolog index utils
xtools0.0.245662
Extended tools for Prolog
bio_db3.220662
Access, use and manage big, biological datasets.
wordnet0.9.346513
Access to WordNet database
recaptcha0.9.226459
reCAPTCHA plugin for SWI-Prolog HTTP framework
by_unix0.22641
An elegance layer to calling unix commands.
stoics_lib1.410632
A medley of library predicates for stoics packs
prologmud_samples2.0.336631
Online text adventure game - Sample
cplint_r1.0.0146220
R plotting predicates for cplint
wsdl0.160
Web Service Description Language (WSDL) and SOAP
wgraph0.655819
Weighted graphs, with plotting via Real
amazon_api0.0.325851
Interface to Amazon APIs
maybe0.1.135754
The maybe type represents an optional value
transpiler0.116563
A universal translator for programming languages
rocksdb0.8.055618
SWI-Prolog interface to RocksDB
mlu0.215649
Machine learning utilities
sweet0.1.135550
Sugar to make Prolog a little sweeter
fnotation1.0.05542
Function notation for Prolog
ffimatrix0.1.010541
Operations with matrices using Prolog and C
bims2.355418
Bayesian inference of model structure.
interpolate0.1.02531
String interpolation
swipe0.2.6115123
Shell pipeline construction with type checking
irc_client1.3.095128
Low level interface to IRC clients
cplint_datasets1.051
Dataset for machine learning with cplint
condition0.1.134937
Condition system a la Common Lisp
xlibrary0.0.231481
Extended Libraries for Prolog
dynworks1.1.124836
Dynamic multi-dimensional arrays and vectors
rdfs2pl0.0.534725
Compile an RDFS schema to prolog predicates
pljulia0.1.417471
Embedded Julia for SWI Prolog
lbfgs1.015451
An interface to call libLBFGS from within SWI-Prolog
tor1.0.444423
Tor: Extensible Search with Hookable Disjunction
prologmud2.0.327442
Online text adventure game - MUD Server
nan_numerics_prime1.2.544439
Nan.Numerics.Prime - A simple prime number library
musicbrainz0.7.0214418
Musicbrainz client library
debug_call1.46444
Debugging with calls
assertions0.0.129441
Ciao Assertions Reader for SWI-Prolog
weblog0.0.564312
(0/1)
weblog
turing1.0.224338
Turing Machine Simulator
hdt0.564325
Access RDF HDT files
ccprism0.1.0204317
Probabilistic programming using delimited continuations
uuid1.1.024240
Generating and parsing version 4 UUIDs
plosc0.4.664211
OSC input/output via liblo
environ1.041
Demo package with C code, fetching the program environment
bio_db_repo20.9.1415411
Data package for bio_db.
obo_metadata0.0.434037
RDF vocabulary for OBO metadata ontologies
must_trace1.1.11826391
Trace with your eyeballs instead of your fingers
bencode0.0.139
Bencoding from BitTorrent protocol
simple_web0.3.163719
Microframework for building websites
rtchecks0.0.123371
Run-Time Checker for Assertions
mqtt1.0.523735
mqtt - pub/sub pack for SWI-Prolog using mosquitto
fld0.1.03372
Easy assess to term args when loading from ODBC or CSV.
semantria0.0.433424
Use Semantria natural language API
plml2.0.3163410
Prolog-Matlab bridge
plchatscript1.0.943428
(1/1)
Interface to the ChatScript server.
mtx0.54345
Working with data matrices
link_grammar_prolog4.1.0.323430
A binding to use the Link Grammar library from SWI-Prolog
jwt_io0.0.343411
JWT implementation
julian_lang_en0.0.213433
Parse English language phrases into library(julian) constraints
jolog0.0.313424
Concurrency via join calculus
clitable1.0.87345
Pretty unicode tables for the CLI with Prolog
uri_qq0.3.033322
URI quasiquotations
plmidi0.7.073310
Interface to Mac OS X MIDI system
http2_client1.0.063324
An HTTP/2 client
css_write1.2.03335
DCG for generating CSS
pubmed0.0.433221
Access pubmed publication records
plsmf0.5.083218
Standard MIDI File reading
hashtbl0.0.213231
Pure and impure hash tables
eggdrop2.0.319324
Hook up to an existing IRC Client called an Eggdrop
spuds1.110311
Persistent, user code inclusive, documentation server for linux
rtp_qsndqs0.323129
Real-time persistent queues and deques.
resbound0.8.113130
Run goal with resource bounds
lib2.816312
Predicate based code development
lcs0.0.131
Longest common subsequence
gpc1.2.03319
Generic polygon clipper
googleclient0.5.233111
SWI-Prolog code for "Login with Google"
clpBNR0.9.35315
CLP over Reals using Interval Arithmetic - includes Rational, Integer and Boolean domains as subsets.
dia0.130
An interface to .dia-uml-diagrams
b_real0.54301
Interface predicates to commonly used R functions.
roman0.1.029
Roman numerals
plrand0.9.1313298
Skippable pseudorandom generator and distributions
pl_omdb0.5.08299
API interface to OMDB (Open Movie Database)
instant_prolog_docs2.0.312291
Magically document prolog source files based on predicate and variable naming conventions
thousands0.2.032823
(0/1)
Thousands separator for large integers
sql_compiler0.1.428
Prolog to SQL compiler
reif1.0.028
Reified if, reification library
inotify0.9.112827
Access Linux inotify API to watch file system changes
format_spec0.0.212827
Parse and check format/2 specifications
switex0.0.762721
Literate programming with LaTeX and Prolog
multimodal_dcg2.0.38271
Reduce floundering of DCGs by constraining and narrowing search
dot_dcg0.1.04271
A DCG for a subset of the DOT language
dirtree1.0.13279
Load XML of directory content.
dcg4pt1.0.04273
DCG for Parse Trees
biomake0.1.59276
Prolog makefile-like system
mutable_variables1.0.026
Mutable Variables
cclab0.1.513269
Continuations lab
xlisting1.2.11115252
Selective Interactive Non-Deterministic Tracing
web0.1.112522
Easy web client
with_state0.0.562416
Stateful computations with records
s_expression1.2.11192414
Utilities for Handling of S-Expression Lisp/Scheme-Like forms and parsing of KIF, GDL, PDDL, CLIF
readability_parser0.0.432415
Readability Parser API
plfann0.0.24243
SWI-Prolog for "Fast Artificial Neural Network Library"
phil_datasets1.07244
Dataset for machine learning with phil
nan_common1.222420
Common operations (validation, etc.)
chat801.11243
Classic CHAT80 Prolog natural language application
rtg0.0.7112312
Regular Tree Grammer validator
prologmud_I71.2.11112233
PrologMUD I7 (NomicMU!) with small Adventure Games in Prolog using the CHAT80 Prolog natural language application
pepl2.142310
Parameter estimation for SLP with the Failure Adjusted Maximisation algorithm.
number_to_word0.4.252318
Integer to English word conversions
mathml0.216231
Translates mathematical expressions to compounds that can be used by html//1 (SWISH) or html//3 (normal SWIPL, with pack http/html_write).
ldap4pl0.112322
LDAP interface
graphpl0.1.16232
Graph data structure utilities
unionfind1.0.022
Optimal implementation of the union-find algorithm in CHR
plcal0.0.55221
Programming Calendar
mpi1.05221
Porting of the LAMMPI library of Yap Prolog to SWI-Prolog
ape6.7.01222
Parser for Attempto Controlled English (ACE)
sparqlprog_wikidata0.0.322113
SPARQLprog bindings for WikiData
sindice0.0.532114
Access to Sindice semantic web search engine
rdf_matcher0.1.532114
RDF matching utils
prolog_graphviz1.0.312120
Prolog Graph Visualization
open_dicts0.0.121
Open dicts for SWI Prolog
geoip0.9.01213
Access GeoIP library
file_utilities0.121
File system related utilities
dotcloud0.0.212115
Conveniences for running on dotCloud
log4p0.0.220
Logging for Prolog
dpath0.5.114209
Directory traversal module
body_reordering2.0.36204
Clause expansion Utils for deciding which order to run Goals in a body
unified_diff0.0.119
Parse and generate unified diffs
timeutils0.0.419
Tools for temporally aware programming
miser0.0.119
Build self-optimizing predicates
fcgi0.9.019
fcgi - Fast Common Gateway Interface (FastCGI) library for Prolog
chess_db0.321915
PGN and chess game databases.
twitter0.1018
(1/1)
A pack to access the twitter api
slack_prolog1.1.11821815
Prolog interface to Slack http://www.slack.com
odict0.2.651813
Unifier over feature structures based on attributed variables
graphql0.0.118
GraphQL Prolog Library
upsh2.54176
Unix to Prolog shell.
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
pha0.1.221715
Probabilistic Horn Abduction
with0.0.416
Context managers for SWI Prolog
r_session1.111615
Interface to an R process
plplot0.0.12165
A library to plot data using gnuplot.
msgpack0.1.641610
DCG for packing & unpacking of MessagePack data to/from bytes
each_call_cleanup1.1.11810161
Each Call Redo Setup and Cleanup
chan0.2.016
Directional channels for thread communication
canny_tudor0.7.010161
Canny bag o' Tudor
bibtex0.1.83166
Parser and predicates for BibTeX files
race0.1.07151
Client for the SOAP interface of the Attempto Reasoner RACE
prolog_geo1.0.54159
Geospatial support in Prolog
musicxml0.0.211513
MusicXML partial reader
lambda_abstractions0.2.111514
Lambda abstractions
fluents0.1.21154
Access all solutions of a goal without backtracking
bousi_pack1.0.03151
On my way to a SWISH enabled BPL - a FLI exercise
with_open_options1.2.116147
Utilities to open various objects for read/write
smtlib0.0.65147
SMT-LIB parser for SWI-Prolog
prism0.2.141410
Run PRISM as a child process
libssh0.9.121411
Provide an embedded SSH server
httplog0.5.01143
Analyse SWI-Prolog HTTP server log files
hook_hybrid1.1.11812142
Hook assert retract call of *specific* predicates
space0.31133
Space package
quantity0.19131
Parse quantities like "1.5 kg" and return some formatting information.
no_repeats1.1.1187134
New ways to avoid duplicate solutions
flux1.1.11813
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.
fine_upload0.1.54138
HTTP support for file uploading
bio_analytics0.43131
Computational biology data analytics.
vcard0.0.112
vCard Parser and Predicates
simple_bootstrap0.0.211210
Bootstrap Extension to Simple Web
loop_check1.1.1189122
New simple loop checking
app0.112
Prolog Application Server
xlisting_web1.1.1186115
Manipulate and browse prolog runtime over www
mail_merge1.0.01111
Library for performing mail merge
logicmoo_cg2.0.34116
Conceptual Graph (CG) Libraries in Prolog and test data
file_scope1.1.1185111
File local scoped efects
consul_client0.0.42118
Consul Client
clause_attvars1.1.1187111
An alternate interface to the clause database to allow attributed variables to be asserted
tidylog0.0.110
term_diff0.0.11108
subclause_expansion1.1.1185101
More detailed versions of term/goal expansion hooks
resp0.33107
Redis protocol parser and writer
mime0.5.010
MIME processing library based on maildrop
logicmoo_webui2.0.36101
LogicMOO - The pack that installs the WebUI
ciao0.0.110
Ciao Prolog compatibility library
with_thread_local1.2.111495
Call a Goal with local assertions
union_find1.0.09
A union-find algorithm implementation for SWI-Prolog
pub_graph1.1197
Access, cache and visualise citation relations in publications servers
plcomplex0.2191
Simple calculation of complex numbers
planner_api1.1.118491
planner_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use planners speaking PDDLish and OCLh
pfd_meta0.19
Probabilistic finite domains meta-interpreter
lps_corner2.0.3295
LPS Corner with SWISH and Dialect
lib_atts1.1.118391
Common atts.pl interface like https://sicstus.sics.se/sicstus/docs/4.0.0/html/sicstus/lib_002datts.html
lazy_streams0.5.09
Lazy Stream Generators
indexed_terms1.0.09
Positional access to terms' arguments
ical0.1.09
iCalendar DCGs and parsers
ansi_termx0.0.19
ANSI terminal operations
rdf_notification0.18
RDF notification
prolog_uriparser1.0.4483
Prolog uriparser
pluuid2.0.08
Generating and parsing version 4 UUIDs in Pure Prolog
ontodot0.1.1285
Create dot files from an RDF ontology.
midiutils0.0.38
midiutils
logicmoo_planners1.1.118284
Various Hybrid HTN Planners speaking PDDLish and OCLh
logicmoo_ec2.0.3581
Logicmoo Event Calc -- A SWI-Prolog Pack that lets Prolog code seamlessly use planners speaking: LPS, Decreasoner EventCalc, PDDLish and OCLh
dictype0.0.28
Concise dict type definitions
tabling_dra1.0.4572
SWI-Prolog interface to Table-handling procedures for the "dra" interpreter. Written by Feliks Kluzniak at UTD (March 2009)
stompl0.17
STOMP client
plammar1.0.2274
Prolog parser and serialiser written in Prolog
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
spotify0.1.06
Use the Spotify API from Prolog.
prolog_rdf1.0.16
Prolog RDF Library
prolog_imagemagick1.0.2264
Prolog ImageMagick binding
pager0.1.0161
Send output to user's preferred pager
obo_core0.0.16
Vocab for upper parts of core OBOs such as GO
identity0.2.26
Registration, login, and role management
hilog1.1.118165
XSB-Prolog's Hilog Syntax in SWI-Prolog
coworkers0.1.05
Workflow definition as tree of coroutines
pac4pl0.1141
An SWI-Prolog interface to libPAC
notes8000.1.0141
Query phone number data from 800notes.com
narsese2.0.3142
Narsese: Like OpenNARS in Prolog
nanp0.1.0143
phone numbers in the North American Numbering Plan
matrix_utls1.1143
Matrix utilities: Kronecker (Tensor), Hadamard, and matrices creation/multiplications
purity0.1.2231
A Horn Clause Only library for Prolog
prolog_starter_project1.0.2132
Prolog Starter Package
ontoweb0.0.4132
Show an ontology through a Web service.
mail_standards0.1.03
Mail IMF and Maildir implementations.
logicmoo_workspace2.0.3231
LogicMOO Workspace -- The pack that installs the Logicmoo IDE and WebUI
hello_world0.13
Hello World pack as a test
print_table0.0.5121
Formats and prints a table on the terminal screen
orgref_fix0.1.02
Fix Org-ref citations.
cli_table1.0.102
Pretty unicode tables for the CLI with Prolog
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
progress_bar0.0.51
Progress-bar and spinner (text-based)
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