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: 349
Version
(#older)
Downloads
tot: 40,908
(#latest)
Rating
(#votes/
#comments)
Title
achelois0.5.077,358143
Collection of tools to make writing scripts in Prolog easier.
list_util0.13.0192,5501
Predicates for working with lists
terminus_store_prolog0.19.5762,533367
Use the Terminus-Store Rust library from Prolog
regex0.3.3111,4491,054
Regular expressions
mavis0.2.3131,0452
Optional type declarations
sparqlprog0.2.921863318
Logic programming with SPARQL
logtalk3.53.0818101
Logtalk - Object-Oriented Logic Programming Language
cplint4.5.02027812
A suite of programs for reasoning with probabilistic logic programs
sudoku_utils0.0.113738732
Testing to make an example package with utils for working with Sudoku
lambda1.0.0685
(4/4)
Lambda expressions
prosqlite1.616683131
(0/1)
An SWI-Prolog interface to SQLite
julian0.1.3762014
Date and time library
date_time0.1.3361327
Logical arithmetic on dates and times
real2.112547128
Integrative statistics with R
prolog_library_collection1.0.1612525161
Prolog Library Collection
dcgutils1.1.311498399
DCG related utilities
typedef0.1.910394282
(2/2)
Support for type definitions
sldnfdraw1.619385119
SLDNF Draw is a Prolog program that draws SLDNF Trees in LaTeX
simple_template1.3.19384189
Logic-free text (HTML) templates
aleph5203801
Aleph Inductive Logic Programming system
tap1.0.3243501
Automated tests via Test Anything Protocol
smtp1.0.05316120
An (E)SMTP client for sending mail
func0.4.28316184
(2/2)
Function application and composition
callgraph0.4.117305171
(1/2)
Predicate call graph visualisation
trill6.0.211828821
A tableau probabilistic reasoner in three different versions
lsp_server2.2.82827889
A Prolog LSP Server
index_util0.0.21247240
Prolog index utils
abbreviated_dates0.0.2814246174
Parses abbreviated & incomplete dates in multiple languages
matrix2.072265
Operations with matrices
markdown0.0.3221893
Markdown parser for SWI-Prolog
obo_metadata0.0.43217214
RDF vocabulary for OBO metadata ontologies
tokenize1.0.14215155
A simple tokenization library
edcg0.9.1.8122154
(1/1)
Extended DCG
db_facts0.5520389
Common db-tables-as-facts and SQL layer for ODBC and proSQLite.
rologpp0.41381991
Simple interface to R
plgi1.1.01119959
(1/1)
PLGI - Prolog bindings for GLib/GObject/GIO/GTK+
arouter2.0.0519515
Alternative HTTP path router
yaml0.141922
YAML parser
gvterm1.11187156
(1/1)
Show Prolog terms using graphviz
pac1.6.51011783
Anonymous predicates expansion utility
reif1.0.0175
Reified if, reification library
docstore2.0.2617314
Document-oriented database for Prolog
rdet1.0.2717021
Runtime determinacy checker
rologp0.121651
Simple interface to R
spawn0.0.1148
Easy concurrency
quickcheck0.3.0171481
QuickCheck randomized testing
auc1.0101482
Library for computing Areas Under the Receiving Operating Charactersitics and Precision Recall curves
bddem4.3.1221382
A library for manipulating Binary Decision Diagrams
dictoo2.0.32313444
Dict-like OO Syntax
phil1.0.0511291
Learning Hierarchical Probabilistic Logic Programs
predicate_streams2.0.32212866
Implement your own Abstract Predicate Streams
djson0.0.32128122
Declarative JSON
pfc2.0.35412413
Pfc -- a package for forward chaining in Prolog
graphml0.1.0123
(1/1)
Write GraphML files
gvar_syntax2.0.31812266
Global Variable Syntax
dcg_util0.3.1311722
(1/1)
DCG utility predicates
plOpenGL0.6.25115101
(1/1)
OpenGL Bindings
dict_schema0.0.21111108
Dict converter and validator
tus0.0.6510542
TUS file transport protocol in prolog
sort_dict0.0.32105101
Sorts dicts by key
blog_core1.5.32310510
Blog/CMS framework
function_expansion0.1.241024
(1/1)
Help for writing function-like macros
openapi0.24981
OpenAPI (Swagger) interface
genutils0.3.8239847
General miscellaneous utilities
wordnet0.9.349716
Access to WordNet database
plcairo1.1.149644
plcairo - Prolog bindings for cairo graphics library
ffi0.57959
Dynamically call C functions
webconsole0.9.119089
(0/1)
Use a browser as HTML console
options1.499010
Options handling.
dynworks1.3.269010
Dynamic multi-dimensional arrays and vectors
clpBNR0.9.9138919
CLP over Reals using Interval Arithmetic - includes Rational, Integer and Boolean domains as subsets.
transpiler0.120873
A universal translator for programming languages
atom_feed0.2.048773
Parse Atom and RSS feeds
prolog_graphviz1.0.538649
Prolog-based graph visualization
xsd0.2.18853
XML Schema validation with Prolog
odf_sheet0.2.458517
Load and analyze ODF spreadsheets (.ods)
type_check1.0.338410
Type System for Prolog based on Hindley-Milner
pack_errors2.158438
Contextual error handling for packs.
delay0.3.378456
Avoid instantiation errors for built-in predicates
refactor0.0.354831
(1/1)
Refactoring Tools for SWI-Prolog
wam_common_lisp2.0.340823
ANSI Common Lisp implemented in Prolog
os_lib1.5108112
Operating system interaction predicates.
fnotation1.0.05817
Function notation for Prolog
sparkle0.0.988070
(1/1)
Prolog-friendly interface to SPARQL endpoints
memo0.6.1178029
Persistent memoisation of deterministic predicates
logicmoo_nlu2.0.326801
Various English to Logic Converters - warning: HUGE amount of lexical and test data
bio_db3.624802
Access, use and manage big, biological datasets.
logicmoo_base2.0.348793
LogicMOO - Extends Prolog Programming to support Dynamic Epistemic Logic (DEL) with Constraints
fileutils0.3.5107921
Utilities for reading, writing and finding files
logicmoo_utils2.0.337783
Common predicates that are used throughout LogicMOO Software
log4p0.0.278
Logging for Prolog
xtools0.0.253772
Extended tools for Prolog
swicli2.0.012758
SWI-Prolog interface to C/C++/.NET/Mono/Objective-C
hello0.0.175
(1/1)
Hello World
cplint_r1.0.0147533
R plotting predicates for cplint
stoics_lib1.4107312
A medley of library predicates for stoics packs
ffimatrix0.1.010711
Operations with matrices using Prolog and C
by_unix0.22718
An elegance layer to calling unix commands.
interpolate0.1.02701
String interpolation
rserve_client1.1.1166911
R Rserve client
bims2.57681
Bayesian inference of model structure.
uuid1.1.026765
Generating and parsing version 4 UUIDs
environ1.067
Demo package with C code, fetching the program environment
wgraph0.656627
Weighted graphs, with plotting via Real
recaptcha0.9.226661
reCAPTCHA plugin for SWI-Prolog HTTP framework
prologmud_samples2.0.338662
Online text adventure game - Sample
maybe0.1.136461
The maybe type represents an optional value
wsdl0.163
Web Service Description Language (WSDL) and SOAP
mlu0.42631
Machine learning utilities
amazon_api0.0.326356
Interface to Amazon APIs
sweet0.1.136257
Sugar to make Prolog a little sweeter
plrand0.9.13136241
Skippable pseudorandom generator and distributions
cplint_datasets1.062
Dataset for machine learning with cplint
pljulia0.1.417611
Embedded Julia for SWI Prolog
rocksdb0.8.055921
SWI-Prolog interface to RocksDB
irc_client1.3.095936
Low level interface to IRC clients
hdt0.565625
Access RDF HDT files
canny_tudor0.18.0175624
Canny bag o' Tudor
inotify0.9.115554
Access Linux inotify API to watch file system changes
swipe0.2.6115325
Shell pipeline construction with type checking
gpc1.2.035318
Generic polygon clipper
assertions0.0.134531
Ciao Assertions Reader for SWI-Prolog
nan_numerics_prime1.2.545247
Nan.Numerics.Prime - A simple prime number library
debug_call1.465212
Debugging with calls
condition0.1.135240
Condition system a la Common Lisp
xlibrary0.0.232501
Extended Libraries for Prolog
prologmud2.0.329502
Online text adventure game - MUD Server
lbfgs1.015501
An interface to call libLBFGS from within SWI-Prolog
bio_db_repo21.12.317502
Data package for bio_db.
plfann0.0.24493
SWI-Prolog for "Fast Artificial Neural Network Library"
rdfs2pl0.0.534826
Compile an RDFS schema to prolog predicates
mqtt1.0.524846
mqtt - pub/sub pack for SWI-Prolog using mosquitto
ccprism0.1.0204721
Probabilistic programming using delimited continuations
musicbrainz0.7.0214620
Musicbrainz client library
dcg4pt1.0.044622
DCG for Parse Trees
weblog0.0.564512
(0/1)
weblog
sparqlprog_wikidata0.0.324537
SPARQLprog bindings for WikiData
plosc0.4.664514
OSC input/output via liblo
tor1.0.444423
Tor: Extensible Search with Hookable Disjunction
turing1.0.224338
Turing Machine Simulator
roman0.1.043
Roman numerals
must_trace1.1.11826431
Trace with your eyeballs instead of your fingers
julian_lang_en0.0.214342
Parse English language phrases into library(julian) constraints
debug_adapter0.2.67434
Debug Adapter Protocol package for SWI-Prolog
bencode0.0.143
Bencoding from BitTorrent protocol
mtx0.65423
Working with data matrices
fld0.1.03422
Easy assess to term args when loading from ODBC or CSV.
clitable1.0.874213
Pretty unicode tables for the CLI with Prolog
simple_web0.3.164123
Microframework for building websites
rtchecks0.0.125411
Run-Time Checker for Assertions
jolog0.0.313929
Concurrency via join calculus
hashtbl0.0.213938
Pure and impure hash tables
chess_db1.03397
PGN and chess game databases.
b_real0.87391
Interface predicates to commonly used R functions.
jwt_io0.0.343815
JWT implementation
http2_client1.0.063829
An HTTP/2 client
css_write1.3.25382
DCG for generating CSS
link_grammar_prolog4.1.0.323733
A binding to use the Link Grammar library from SWI-Prolog
semantria0.0.433626
Use Semantria natural language API
pubmed0.0.433625
Access pubmed publication records
plml2.0.3163612
Prolog-Matlab bridge
plchatscript1.0.943630
(1/1)
Interface to the ChatScript server.
plmidi0.7.073512
Interface to Mac OS X MIDI system
format_spec0.0.213534
Parse and check format/2 specifications
biomake0.1.510357
Prolog makefile-like system
uri_qq0.3.033423
URI quasiquotations
plsmf0.5.083420
Standard MIDI File reading
phil_datasets1.07344
Dataset for machine learning with phil
lcs0.0.134
Longest common subsequence
eggdrop2.0.321341
Hook up to an existing IRC Client called an Eggdrop
dia0.134
An interface to .dia-uml-diagrams
spuds1.110333
Persistent, user code inclusive, documentation server for linux
rtp_qsndqs0.323331
Real-time persistent queues and deques.
resbound0.8.113332
Run goal with resource bounds
lib2.917331
Predicate based code development
chat801.113312
Classic CHAT80 Prolog natural language application
space0.3.34325
Space package
pl_omdb0.5.083212
API interface to OMDB (Open Movie Database)
plplot0.0.133110
A library to plot data using gnuplot.
ldap4pl0.113130
LDAP interface
instant_prolog_docs2.0.3114311
Magically document prolog source files based on predicate and variable naming conventions
googleclient0.5.233111
SWI-Prolog code for "Login with Google"
web0.1.113027
Easy web client
thousands0.2.033025
(0/1)
Thousands separator for large integers
switex0.0.763024
Literate programming with LaTeX and Prolog
multimodal_dcg2.0.38304
Reduce floundering of DCGs by constraining and narrowing search
sql_compiler0.1.412928
Prolog to SQL compiler
s_expression1.2.11192919
Utilities for Handling of S-Expression Lisp/Scheme-Like forms and parsing of KIF, GDL, PDDL, CLIF
dirtree1.0.132911
Load XML of directory content.
cclab0.1.5132912
Continuations lab
number_to_word0.4.252823
Integer to English word conversions
graphpl0.1.16282
Graph data structure utilities
xlisting1.2.11115272
Selective Interactive Non-Deterministic Tracing
rtg0.0.7112716
Regular Tree Grammer validator
plcal0.0.55271
Programming Calendar
pepl2.25271
Parameter estimation for SLP with the Failure Adjusted Maximisation algorithm.
nan_common1.222723
Common operations (validation, etc.)
mathml0.217271
Translates mathematical expressions to compounds that can be used by html//1 (SWISH) or html//3 (normal SWIPL, with pack http/html_write).
fcgi0.9.027
fcgi - Fast Common Gateway Interface (FastCGI) library for Prolog
dpath0.5.1142716
Directory traversal module
dot_dcg0.1.04271
A DCG for a subset of the DOT language
readability_parser0.0.432617
Readability Parser API
quantity0.111261
Parse quantities like "1.5 kg" and return some formatting information.
prologmud_I71.2.11112263
PrologMUD I7 (NomicMU!) with small Adventure Games in Prolog using the CHAT80 Prolog natural language application
prolog_geo1.0.76268
Geospatial support in Prolog
mutable_variables1.0.026
Mutable Variables
mpi1.05261
Porting of the LAMMPI library of Yap Prolog to SWI-Prolog
file_utilities0.126
File system related utilities
with_state0.0.562517
Stateful computations with records
dotcloud0.0.212519
Conveniences for running on dotCloud
open_dicts0.0.124
Open dicts for SWI Prolog
lambda_abstractions0.2.112423
Lambda abstractions
graphql0.0.124
GraphQL Prolog Library
geoip0.9.01243
Access GeoIP library
flux1.1.11824
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.
unified_diff0.0.123
Parse and generate unified diffs
sindice0.0.532316
Access to Sindice semantic web search engine
musicxml0.0.212321
MusicXML partial reader
msgpack0.1.642317
DCG for packing & unpacking of MessagePack data to/from bytes
upsh2.542211
Unix to Prolog shell.
unionfind1.0.022
Optimal implementation of the union-find algorithm in CHR
timeutils0.0.422
Tools for temporally aware programming
rdf_matcher0.1.532215
RDF matching utils
odict0.2.652217
Unifier over feature structures based on attributed variables
miser0.0.122
Build self-optimizing predicates
libssh0.9.122219
Provide an embedded SSH server
execution_context0.2.032216
Allows to retrieve setting from execution environment, given flexibility over setting/2, get_env, or command line configuration
body_reordering2.0.36226
Clause expansion Utils for deciding which order to run Goals in a body
bibtex0.1.832212
Parser and predicates for BibTeX files
tailwind_pl2.0.29213
Tailwind-style CSS generator for Prolog
plasticsearch0.122119
Elasticsearch client API
pha0.1.222119
Probabilistic Horn Abduction
smtlib0.0.652013
SMT-LIB parser for SWI-Prolog
slack_prolog2.0.33201
Prolog interface to Slack http://www.slack.com
prolog_rdf1.0.75206
Prolog RDF Library
cli_table1.0.1020
Pretty unicode tables for the CLI with Prolog
with0.0.419
Context managers for SWI Prolog
union_find1.0.019
A union-find algorithm implementation for SWI-Prolog
twitter0.101191
(1/1)
A pack to access the twitter api
race0.1.07191
Client for the SOAP interface of the Attempto Reasoner RACE
plumdrum0.0.63199
Parsing of Humdrum/Kern symbolic music file format
pinyin0.1.551913
Parsing and generation of Hanyu Pinyin
fluents0.1.21198
Access all solutions of a goal without backtracking
each_call_cleanup1.1.11810181
Each Call Redo Setup and Cleanup
chan0.2.018
Directional channels for thread communication
bousi_pack1.0.03181
On my way to a SWISH enabled BPL - a FLI exercise
bio_analytics0.43186
Computational biology data analytics.
prolog_imagemagick1.0.33179
Prolog binding for ImageMagick
prism0.2.141713
Run PRISM as a child process
plmake0.0.311712
Prolog makefile-like system
mime0.5.01171
MIME processing library based on maildrop
httplog0.5.01173
Analyse SWI-Prolog HTTP server log files
with_open_options1.2.116169
Utilities to open various objects for read/write
r_session1.111615
Interface to an R process
plcomplex0.22161
Simple calculation of complex numbers
fine_upload0.1.541611
HTTP support for file uploading
ape6.7.18071516
Parser for Attempto Controlled English (ACE)
no_repeats1.1.1187156
New ways to avoid duplicate solutions
logicmoo_cg2.0.35159
Conceptual Graph (CG) Libraries in Prolog and test data
ansi_termx0.0.115
ANSI terminal operations
xlisting_web1.1.1186148
Manipulate and browse prolog runtime over www
simple_bootstrap0.0.211412
Bootstrap Extension to Simple Web
resp0.331411
Redis protocol parser and writer
prolog_uriparser1.0.55145
Prolog binding for uriparser
hook_hybrid1.1.11812142
Hook assert retract call of *specific* predicates
files_extras0.1.02142
Few extra predicates for traversing folders and simplifying work with file system
consul_client0.0.421411
Consul Client
ciao0.0.111413
Ciao Prolog compatibility library
pub_graph1.111311
Access, cache and visualise citation relations in publications servers
print_table0.0.52131
Formats and prints a table on the terminal screen
mail_merge1.0.01131
Library for performing mail merge
logicmoo_webui2.0.38131
LogicMOO - The pack that installs the WebUI
lib_atts1.1.1183131
Common atts.pl interface like https://sicstus.sics.se/sicstus/docs/4.0.0/html/sicstus/lib_002datts.html
file_scope1.1.1185131
File local scoped efects
clause_attvars1.1.1187131
An alternate interface to the clause database to allow attributed variables to be asserted
vcard0.0.112
vCard Parser and Predicates
tidylog0.0.112
term_diff0.0.111210
prolog_starter_project1.0.42126
Prolog Starter Project
pl_mustache1.0.02121
Mustache
pfd_meta0.112
Probabilistic finite domains meta-interpreter
ontodot0.1.12129
Create dot files from an RDF ontology.
matrix_utls1.11129
Matrix utilities: Kronecker (Tensor), Hadamard, and matrices creation/multiplications
loop_check1.1.1189122
New simple loop checking
lazy_streams0.5.012
Lazy Stream Generators
indexed_terms1.0.012
Positional access to terms' arguments
identity0.2.212
Registration, login, and role management
app0.112
Prolog Application Server
stompl0.11112
STOMP client
pluuid2.0.011
Generating and parsing version 4 UUIDs in Pure Prolog
lps_corner2.0.33111
LPS Corner with SWISH and Dialect
k8s_client1.0.33111
kubernetes API client with watcher functionality
dictype0.0.211
Concise dict type definitions
subclause_expansion1.1.1185101
More detailed versions of term/goal expansion hooks
rdf_notification0.110
RDF notification
plammar1.0.24102
Prolog parser and serialiser written in Prolog
pcache0.1.010
Persistent answer cache
with_thread_local1.2.111495
Call a Goal with local assertions
spotify0.1.09
Use the Spotify API from Prolog.
planner_api1.1.118491
planner_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use planners speaking PDDLish and OCLh
obo_ro0.0.19
Vocab for OBO Relation Ontology
obo_core0.0.19
Vocab for upper parts of core OBOs such as GO
nan_system_sources1.2.09
Nan.System.Sources - Answer Sources in Prolog
kubepl0.1196
Kubernetes Client
ical0.1.09
iCalendar DCGs and parsers
hello_world0.19
Hello World pack as a test
plstat1.0187
plstat - Statistics with Prolog
pascal1.0481
Probabilistc inductive constraint logic
pager0.1.0181
Send output to user's preferred pager
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
hilog1.1.118187
XSB-Prolog's Hilog Syntax in SWI-Prolog
coworkers0.1.08
Workflow definition as tree of coroutines
tabling_dra1.0.4572
SWI-Prolog interface to Table-handling procedures for the "dra" interpreter. Written by Feliks Kluzniak at UTD (March 2009)
evil0.2.3171
(4/4)
Predicates to Further the Cause of Evil
scasp0.9.06
Goal directed ASP solver
progress_bar0.0.5161
Progress-bar and spinner (text-based)
pac4pl0.1161
An SWI-Prolog interface to libPAC
ontoweb0.0.4165
Show an ontology through a Web service.
notes8000.1.0161
Query phone number data from 800notes.com
nanp0.1.0165
phone numbers in the North American Numbering Plan
languages_bot0.0.1162
A chatbot that talks with the user to recommend some programming language
excel_worksheets0.3.0561
Excel reader of worksheets cell values into prolog terms
arithmetic_types0.0.2165
Support for user defined types in arithmetic expressions
svg0.15
Manipulating SVG xmls
purity0.1.3352
A Horn Clause Only library for Prolog
orgref_fix0.1.05
Fix Org-ref citations.
narsese2.0.3142
Narsese: Like OpenNARS in Prolog
logicmoo_nars2.0.3143
Narsese: Like OpenNARS in Prolog
gbn0.2143
BNs for large cohort genomic studies.
tailwind_pl_generate2.1.1231
Tailwind-style CSS generator for Prolog - Generator
programk1.4.1113
AIML 2.0 - Because an AIML Interpreter/Chatbot needed to exist in Prolog to!
mail_standards0.1.03
Mail IMF and Maildir implementations.
logicmoo_workspace2.0.3231
LogicMOO Workspace -- The pack that installs the Logicmoo IDE and WebUI
disp_bn0.13
Construct and display BN terms via graphviz
aop0.0.12
Opinonated aspect-oriented programming for 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
pddl_valoptic_api1.1.1181
pddl_valoptic_api -- A SWI-Prolog Pack that lets Prolog code seamlessly use PDDL based planners.
pPEG0.0.01
Support for parsing with pPEG grammars
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