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: 359
Version
(#older)
Downloads
tot: 45,098
(#latest)
Rating
(#votes/
#comments)
Title
abbreviated_dates0.0.5027746186
Parses abbreviated & incomplete dates in multiple languages
achelois0.5.077,440159
Collection of tools to make writing scripts in Prolog easier.
aleph5204091
Aleph Inductive Logic Programming system
amazon_api0.0.326659
Interface to Amazon APIs
ansi_termx0.0.118
ANSI terminal operations
aop0.0.653218
Opinonated aspect-oriented programming for prolog
ape6.7.18071532
Parser for Attempto Controlled English (ACE)
app0.112
Prolog Application Server
arithmetic_types0.0.21109
Support for user defined types in arithmetic expressions
arouter2.0.0520424
Alternative HTTP path router
assertions0.0.136611
Ciao Assertions Reader for SWI-Prolog
atom_feed0.2.049177
Parse Atom and RSS feeds
auc1.0101542
Library for computing Areas Under the Receiving Operating Charactersitics and Precision Recall curves
automake0.2.012254
Automake
b_real0.87424
Interface predicates to commonly used R functions.
bddem4.3.1231462
A library for manipulating Binary Decision Diagrams
bencode0.0.146
Bencoding from BitTorrent protocol
bibtex0.1.832515
Parser and predicates for BibTeX files
bims2.57747
Bayesian inference of model structure.
bio_analytics0.432210
Computational biology data analytics.
bio_db3.624868
Access, use and manage big, biological datasets.
bio_db_repo21.12.317557
Data package for bio_db.
biomake0.1.511387
Prolog makefile-like system
blog_core1.5.32311015
Blog/CMS framework
body_reordering2.0.36259
Clause expansion Utils for deciding which order to run Goals in a body
bousi_pack1.0.03211
On my way to a SWISH enabled BPL - a FLI exercise
by_unix0.227411
An elegance layer to calling unix commands.
call_cleaup_each0.0.11
Call A Goal On Each Redo
callgraph0.4.117324190
(1/2)
Predicate call graph visualisation
canny_tudor0.18.0176836
Canny bag o' Tudor
cclab0.1.5133215
Continuations lab
ccprism0.1.0205125
Probabilistic programming using delimited continuations
chan0.2.021
Directional channels for thread communication
chat801.113615
Classic CHAT80 Prolog natural language application
chess_db1.034412
PGN and chess game databases.
ciao0.0.111713
Ciao Prolog compatibility library
clause_attvars1.1.1187161
An alternate interface to the clause database to allow attributed variables to be asserted
cli_table1.0.1024
Pretty unicode tables for the CLI with Prolog
clitable1.0.874617
Pretty unicode tables for the CLI with Prolog
clpBNR0.9.12161166
CLP over Reals using Interval Arithmetic - includes Rational, Integer and Boolean domains as subsets.
clpcd0.0.14
Constraints over continuous domains
condition0.1.135644
Condition system a la Common Lisp
consul_client0.0.421714
Consul Client
cosmos0.21.09141
<no title>
coworkers0.1.011
Workflow definition as tree of coroutines
cplint4.5.02068212
A suite of programs for reasoning with probabilistic logic programs
cplint_datasets1.067
Dataset for machine learning with cplint
cplint_r1.0.0148240
R plotting predicates for cplint
css_write1.3.25448
DCG for generating CSS
ct_fft0.01
Cooley–Tukey FFT algorithm
date_time0.1.461,305519
(1/1)
Logical arithmetic on dates and times
db_facts0.55219105
Common db-tables-as-facts and SQL layer for ODBC and proSQLite.
dcg4pt1.0.045127
DCG for Parse Trees
dcg_util0.3.1312523
(1/1)
DCG utility predicates
dcgutils1.1.311500401
DCG related utilities
debug_adapter0.7.2289210
Debug Adapter Protocol package for SWI-Prolog
debug_call1.465515
Debugging with calls
delay0.3.378456
Avoid instantiation errors for built-in predicates
dia0.139
An interface to .dia-uml-diagrams
diagnostics0.2.033317
SWI-Prolog source code diagnostics library
dialect-ciao0.0.11
Ciao Prolog compatibility library
dict_schema0.0.21113110
Dict converter and validator
dictoo3.0.3251371
Dict-like OO Syntax
dictype0.0.214
Concise dict type definitions
dirtree1.0.133113
Load XML of directory content.
disp_bn0.16
Construct and display BN terms via graphviz
djson0.0.32135129
Declarative JSON
docstore2.0.2618223
Document-oriented database for Prolog
dot_dcg0.1.04271
A DCG for a subset of the DOT language
dotcloud0.0.212721
Conveniences for running on dotCloud
dpath0.7.25356
Directory traversal module
dynworks1.3.269717
Dynamic multi-dimensional arrays and vectors
each_call_cleanup1.1.11810201
Each Call Redo Setup and Cleanup
edcg0.9.1.8132231
(1/1)
Extended DCG
eggdrop2.0.321361
Hook up to an existing IRC Client called an Eggdrop
environ1.073
Demo package with C code, fetching the program environment
evil0.2.3171
(4/4)
Predicates to Further the Cause of Evil
excel_worksheets0.3.0561
Excel reader of worksheets cell values into prolog terms
execution_context0.2.042517
Allows to retrieve setting from execution environment, given flexibility over setting/2, get_env, or command line configuration
fcgi0.9.029
fcgi - Fast Common Gateway Interface (FastCGI) library for Prolog
ffi0.5710620
Dynamically call C functions
ffimatrix0.1.010741
Operations with matrices using Prolog and C
file_scope1.1.1185151
File local scoped efects
file_utilities0.129
File system related utilities
files_extras0.1.02162
Few extra predicates for traversing folders and simplifying work with file system
fileutils0.3.5108022
Utilities for reading, writing and finding files
fine_upload0.2.05211
HTTP support for file uploading
fld1.0.24461
Object system that allows easy and efficient access to term arguments by name.
fluents0.1.212110
Access all solutions of a goal without backtracking
flux1.1.11829
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.
fnotation1.0.05839
Function notation for Prolog
format_spec0.0.213938
Parse and check format/2 specifications
func0.4.28320188
(2/2)
Function application and composition
function_expansion0.1.241034
(1/1)
Help for writing function-like macros
gbn0.2165
BNs for large cohort genomic studies.
genutils0.3.82310352
General miscellaneous utilities
geoip0.9.01273
Access GeoIP library
googleclient0.5.233111
SWI-Prolog code for "Login with Google"
gpc1.2.036121
Generic polygon clipper
graphml0.1.0129
(1/1)
Write GraphML files
graphpl0.1.16312
Graph data structure utilities
graphql0.0.128
GraphQL Prolog Library
graphql-swipl0.0.11
GraphQL Prolog Library
gvar_syntax2.0.31812367
Global Variable Syntax
gvterm1.11197166
(1/1)
Show Prolog terms using graphviz
hashtbl0.0.214140
Pure and impure hash tables
hdt0.565925
Access RDF HDT files
hello0.0.175
(1/1)
Hello World
hello_world0.111
Hello World pack as a test
hilog1.1.1181109
XSB-Prolog's Hilog Syntax in SWI-Prolog
hook_hybrid1.1.11812142
Hook assert retract call of *specific* predicates
http2_client1.0.064536
An HTTP/2 client
httplog0.5.01203
Analyse SWI-Prolog HTTP server log files
ical0.1.09
iCalendar DCGs and parsers
identity0.2.215
Registration, login, and role management
imodule0.0.11
Support for modules from the server.
index_util0.0.21250243
Prolog index utils
indexed_terms1.0.014
Positional access to terms' arguments
inotify0.9.115756
Access Linux inotify API to watch file system changes
instant_prolog_docs2.0.3114331
Magically document prolog source files based on predicate and variable naming conventions
interpolate0.1.02731
String interpolation
irc_client1.3.096138
Low level interface to IRC clients
jolog0.0.314131
Concurrency via join calculus
julian0.1.3764714
Date and time library
julian_lang_en0.0.214645
Parse English language phrases into library(julian) constraints
jwt_io0.0.344118
JWT implementation
k8s_client1.0.33133
kubernetes API client with watcher functionality
kubepl0.11118
Kubernetes Client
lambda1.0.0716
(4/4)
Lambda expressions
lambda_abstractions0.2.112726
Lambda abstractions
languages_bot0.0.1184
A chatbot that talks with the user to recommend some programming language
lazy_streams0.5.014
Lazy Stream Generators
lbfgs1.015511
An interface to call libLBFGS from within SWI-Prolog
lcs0.0.137
Longest common subsequence
ldap4pl0.113433
LDAP interface
lib2.917331
Predicate based code development
lib_atts1.1.1183151
Common atts.pl interface like https://sicstus.sics.se/sicstus/docs/4.0.0/html/sicstus/lib_002datts.html
libssh0.9.122926
Provide an embedded SSH server
link_grammar_prolog4.1.0.324137
A binding to use the Link Grammar library from SWI-Prolog
list_util0.13.0192,6681
Predicates for working with lists
log4p0.0.2106
Logging for Prolog
logicmoo_base2.0.348823
LogicMOO - Extends Prolog Programming to support Dynamic Epistemic Logic (DEL) with Constraints
logicmoo_cg2.0.36171
Conceptual Graph (CG) Libraries in Prolog and test data
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
logicmoo_nars2.0.3153
Narsese: Like OpenNARS in Prolog
logicmoo_nlu2.0.326821
Various English to Logic Converters - warning: HUGE amount of lexical and test data
logicmoo_planners1.1.118284
Various Hybrid HTN Planners speaking PDDLish and OCLh
logicmoo_utils3.0.339823
Common predicates that are used throughout LogicMOO Software
logicmoo_webui2.0.38151
LogicMOO - The pack that installs the WebUI
logicmoo_workspace2.0.3231
LogicMOO Workspace -- The pack that installs the Logicmoo IDE and WebUI
logtalk3.55.0838254
Logtalk - Object-Oriented Logic Programming Language
loop_check1.1.1189122
New simple loop checking
lps_corner2.0.33133
LPS Corner with SWISH and Dialect
lsp_server2.2.828364175
A Prolog LSP Server
mail_merge1.0.01151
Library for performing mail merge
mail_standards0.1.03
Mail IMF and Maildir implementations.
markdown0.0.32241113
Markdown parser for SWI-Prolog
mathml0.217291
Translates mathematical expressions to compounds that can be used by html//1 (SWISH) or html//3 (normal SWIPL, with pack http/html_write).
matrix2.0723514
Operations with matrices
matrix_utls1.111411
Matrix utilities: Kronecker (Tensor), Hadamard, and matrices creation/multiplications
mavis0.2.3131,0462
Optional type declarations
maybe0.1.136865
The maybe type represents an optional value
memo0.6.1178332
Persistent memoisation of deterministic predicates
midiutils0.0.38
midiutils
mime0.5.01181
MIME processing library based on maildrop
miser0.0.123
Build self-optimizing predicates
mlu0.42642
Machine learning utilities
mpi1.05271
Porting of the LAMMPI library of Yap Prolog to SWI-Prolog
mqtt1.0.525654
mqtt - pub/sub pack for SWI-Prolog using mosquitto
msgpack0.1.642418
DCG for packing & unpacking of MessagePack data to/from bytes
msgpackc0.2.14111
C-Based MessagePack for SWI-Prolog
mtx0.65434
Working with data matrices
multimodal_dcg2.0.38315
Reduce floundering of DCGs by constraining and narrowing search
musicbrainz0.7.0214822
Musicbrainz client library
musicxml0.0.212422
MusicXML partial reader
must_trace1.1.11826431
Trace with your eyeballs instead of your fingers
mutable_variables1.0.026
Mutable Variables
nan_common1.222824
Common operations (validation, etc.)
nan_numerics_prime1.2.545550
Nan.Numerics.Prime - A simple prime number library
nan_system_sources1.2.010
Nan.System.Sources - Answer Sources in Prolog
nanp0.1.0176
phone numbers in the North American Numbering Plan
narsese2.0.3142
Narsese: Like OpenNARS in Prolog
no_repeats1.1.1187167
New ways to avoid duplicate solutions
notes8000.1.0171
Query phone number data from 800notes.com
number_to_word0.4.253227
Integer to English word conversions
obo_core0.0.110
Vocab for upper parts of core OBOs such as GO
obo_metadata0.0.43218215
RDF vocabulary for OBO metadata ontologies
obo_ro0.0.110
Vocab for OBO Relation Ontology
odf_sheet0.2.458618
Load and analyze ODF spreadsheets (.ods)
odict0.2.652318
Unifier over feature structures based on attributed variables
ontodot0.1.121310
Create dot files from an RDF ontology.
ontoweb0.0.4176
Show an ontology through a Web service.
open_dicts0.0.126
Open dicts for SWI Prolog
openapi0.241001
OpenAPI (Swagger) interface
options1.499313
Options handling.
orgref_fix0.1.06
Fix Org-ref citations.
os_lib1.5108213
Operating system interaction predicates.
pPEG1.0.27181
Pack to support parsing text using pPEG grammars
pac1.6.51011794
Anonymous predicates expansion utility
pac4pl0.1171
An SWI-Prolog interface to libPAC
pack_errors2.158842
Contextual error handling for packs.
pager0.1.0191
Send output to user's preferred pager
pascal1.04111
Probabilistc inductive constraint logic
pcache0.1.011
Persistent answer cache
pddl_valoptic_api1.1.1181
pddl_valoptic_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use PDDL based planners.
peg_syntax1.0173
PEG syntax for prolog
pepl2.25282
Parameter estimation for SLP with the Failure Adjusted Maximisation algorithm.
pfc3.0.3581471
Pfc -- a package for forward chaining in Prolog
pfd_meta0.114
Probabilistic finite domains meta-interpreter
pha0.1.222321
Probabilistic Horn Abduction
phil1.0.0511361
Learning Hierarchical Probabilistic Logic Programs
phil_datasets1.07364
Dataset for machine learning with phil
pinyin0.1.552014
Parsing and generation of Hanyu Pinyin
plOpenGL0.6.25121107
(1/1)
OpenGL Bindings
pl_mustache1.0.02141
Mustache
pl_omdb0.5.083313
API interface to OMDB (Open Movie Database)
pl_owl0.1.02
OWL utility predicates over rdf library
plammar1.0.24122
Prolog parser and serialiser written in Prolog
planner_api1.1.118491
planner_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use planners speaking PDDLish and OCLh
plasticsearch0.122220
Elasticsearch client API
plcairo1.1.149947
plcairo - Prolog bindings for cairo graphics library
plcal0.0.55281
Programming Calendar
plchatscript1.0.943630
(1/1)
Interface to the ChatScript server.
plcomplex0.22191
Simple calculation of complex numbers
plfann0.0.24533
SWI-Prolog for "Fast Artificial Neural Network Library"
plgi1.1.01120161
(1/1)
PLGI - Prolog bindings for GLib/GObject/GIO/GTK+
pljulia0.1.417671
Embedded Julia for SWI Prolog
plmake0.0.311712
Prolog makefile-like system
plmidi0.7.073613
Interface to Mac OS X MIDI system
plml2.0.3163713
Prolog-Matlab bridge
plosc0.4.664615
OSC input/output via liblo
plplot0.0.133410
A library to plot data using gnuplot.
plrand0.9.13136544
Skippable pseudorandom generator and distributions
plsmf0.5.083521
Standard MIDI File reading
plstat1.011312
plstat - Statistics with Prolog
plumdrum0.0.632010
Parsing of Humdrum/Kern symbolic music file format
pluuid2.0.012
Generating and parsing version 4 UUIDs in Pure Prolog
predicate_streams3.0.3231291
Implement your own Abstract Predicate Streams
print_table0.0.52251
Formats and prints a table on the terminal screen
prism0.2.141814
Run PRISM as a child process
programk2.0.3163
AIML 2.0 - Because an AIML Interpreter/Chatbot needed to exist in Prolog to!
progress_bar0.0.5191
Progress-bar and spinner (text-based)
prolog_geo1.0.76279
Geospatial support in Prolog
prolog_graphviz1.0.5310265
Prolog-based graph visualization
prolog_imagemagick1.0.331911
Prolog binding for ImageMagick
prolog_library_collection1.0.1612592228
Prolog Library Collection
prolog_rdf1.0.75217
Prolog RDF Library
prolog_starter_project1.0.42137
Prolog Starter Project
prolog_uriparser1.0.55156
Prolog binding for uriparser
prologmud2.0.330512
Online text adventure game - MUD Server
prologmud_I71.2.11112273
PrologMUD I7 (NomicMU!) with small Adventure Games in Prolog using the CHAT80 Prolog natural language application
prologmud_samples2.0.338672
Online text adventure game - Sample
prosqlite1.7177358
(0/1)
An SWI-Prolog interface to SQLite
pub_graph1.111412
Access, cache and visualise citation relations in publications servers
pubmed0.0.433827
Access pubmed publication records
purity0.1.3374
A Horn Clause Only library for Prolog
py_to_plantuml0.0.3263
Creates UML class diagrams from Python pylint's pyreverse generated .dot files.
quantity0.111271
Parse quantities like "1.5 kg" and return some formatting information.
quickcheck0.3.0171501
QuickCheck randomized testing
r_session1.111615
Interface to an R process
race0.1.07211
Client for the SOAP interface of the Attempto Reasoner RACE
rdet1.0.2717122
Runtime determinacy checker
rdf_matcher0.1.532316
RDF matching utils
rdf_notification0.111
RDF notification
rdfs2pl0.0.534927
Compile an RDFS schema to prolog predicates
readability_parser0.0.432718
Readability Parser API
real2.112557138
Integrative statistics with R
recaptcha0.9.226762
reCAPTCHA plugin for SWI-Prolog HTTP framework
refactor0.0.357901
(1/1)
Refactoring Tools for SWI-Prolog
regex0.3.3111,5161,121
Regular expressions
reif1.0.0225
Reified if, reification library
reif_utils1.0.03
A collection of reified predicates for use with reif.pl
resbound0.8.113433
Run goal with resource bounds
resp0.331512
Redis protocol parser and writer
resp_parse0.11
Redis protocol parser and writer
rocksdb0.8.056224
SWI-Prolog interface to RocksDB
rologp0.121661
Simple interface to R
rologpp0.41381991
Simple interface to R
roman0.1.047
Roman numerals
ropes0.1.75103
Ropes data structure library
rserve_client1.1.1166911
R Rserve client
rtchecks0.0.126441
Run-Time Checker for Assertions
rtg0.0.7112817
Regular Tree Grammer validator
rtp_qsndqs0.323432
Real-time persistent queues and deques.
rtrace0.0.71
Selective Interactive Non-Deterministic Tracing
s_expression1.2.11193121
Utilities for Handling of S-Expression Lisp/Scheme-Like forms and parsing of KIF, GDL, PDDL, CLIF
scasp0.9.010399
Goal directed ASP solver
semantria0.0.433626
Use Semantria natural language API
simple_bootstrap0.0.211412
Bootstrap Extension to Simple Web
simple_template1.3.19419222
Logic-free text (HTML) templates
simple_web0.3.164224
Microframework for building websites
sindice0.0.532518
Access to Sindice semantic web search engine
slack_prolog2.0.33201
Prolog interface to Slack http://www.slack.com
sldnfdraw1.619418152
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.652013
SMT-LIB parser for SWI-Prolog
smtp1.0.05320124
An (E)SMTP client for sending mail
sort_dict0.0.32108104
Sorts dicts by key
space0.3.34347
Space package
sparkle0.1.19811
(1/1)
Prolog-friendly interface to SPARQL endpoints
sparqlprog0.2.921957318
Logic programming with SPARQL
sparqlprog_wikidata0.0.324739
SPARQLprog bindings for WikiData
spawn0.0.1151
Easy concurrency
spotify0.1.011
Use the Spotify API from Prolog.
spuds1.110333
Persistent, user code inclusive, documentation server for linux
sql_compiler0.1.412928
Prolog to SQL compiler
stoics_lib1.4107716
A medley of library predicates for stoics packs
stompl0.11112
STOMP client
subclause_expansion1.1.1185101
More detailed versions of term/goal expansion hooks
sudoku_utils0.0.113738732
Testing to make an example package with utils for working with Sudoku
svg0.15
Manipulating SVG xmls
sweet0.1.136459
Sugar to make Prolog a little sweeter
swicli2.0.012788
SWI-Prolog interface to C/C++/.NET/Mono/Objective-C
swipe0.2.6115325
Shell pipeline construction with type checking
switex0.0.763024
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)
tailwind_pl2.0.29213
Tailwind-style CSS generator for Prolog
tailwind_pl_generate2.1.1231
Tailwind-style CSS generator for Prolog - Generator
tap1.0.3243691
Automated tests via Test Anything Protocol
telegrambot0.0.21
API for Telegram
term_diff0.0.111210
terminus_store_prolog0.19.8793,429133
Use the Terminus-Store Rust library from Prolog
thousands0.2.033025
(0/1)
Thousands separator for large integers
tidylog0.0.112
timeutils0.0.422
Tools for temporally aware programming
tokenize1.0.14230170
A simple tokenization library
tor1.0.444423
Tor: Extensible Search with Hookable Disjunction
transpiler0.120923
A universal translator for programming languages
trill6.0.41202921
A tableau probabilistic reasoner in three different versions
turing1.0.224338
Turing Machine Simulator
tus0.0.10918024
TUS file transport protocol in prolog
twitter0.101224
(1/1)
A pack to access the twitter api
type_check1.0.338612
Type System for Prolog based on Hindley-Milner
typedef0.1.910399287
(2/2)
Support for type definitions
unified_diff0.0.123
Parse and generate unified diffs
union_find1.0.025
A union-find algorithm implementation for SWI-Prolog
unionfind1.0.022
Optimal implementation of the union-find algorithm in CHR
upsh2.542312
Unix to Prolog shell.
uri_qq0.3.033625
URI quasiquotations
uuid1.1.027068
Generating and parsing version 4 UUIDs
vcard0.0.112
vCard Parser and Predicates
wam_common_lisp2.0.340878
ANSI Common Lisp implemented in Prolog
web0.1.113330
Easy web client
webconsole0.9.119291
(0/1)
Use a browser as HTML console
weblog0.0.564712
(0/1)
weblog
wgraph0.656728
Weighted graphs, with plotting via Real
with0.0.420
Context managers for SWI Prolog
with_open_options1.2.116169
Utilities to open various objects for read/write
with_state0.0.562517
Stateful computations with records
with_thread_local1.2.1115101
Call a Goal with local assertions
wordnet0.9.3410916
Access to WordNet database
wsdl0.165
Web Service Description Language (WSDL) and SOAP
wumpus1.0.01
Hunt The Wumpus
xlibrary0.0.235531
Extended Libraries for Prolog
xlisting1.2.11115272
Selective Interactive Non-Deterministic Tracing
xlisting_web1.1.1186148
Manipulate and browse prolog runtime over www
xsd0.2.18853
XML Schema validation with Prolog
xtools0.0.255792
Extended tools for Prolog
yaml0.141932
YAML parser