Did you know ... Search Documentation:
Profile for user Jan Wielemaker

Tags by Jan Wielemaker

Apache[wiki] Can I replace a LAMP stack with SWI-Prolog?, [wiki] Making the server accessible at port 80
C-Sharp[wiki] SWI-Prolog interface to C# and F#
Debian[wiki] Prerequisites for Debian based systems (Ubuntu, Mint, ...)
Eclipse(IDE)[wiki] Program Development Tools
F-Sharp[wiki] SWI-Prolog interface to C# and F#
JPL[wiki] SWI-Prolog signal handling (Unix-like platforms)
JVM[wiki] SWI-Prolog signal handling (Unix-like platforms)
Java[wiki] SWI-Prolog signal handling (Unix-like platforms)
MacOSX[wiki] SWI-Prolog downloads
Mint[wiki] Prerequisites for Debian based systems (Ubuntu, Mint, ...)
Mono[wiki] SWI-Prolog interface to C# and F#
MySQL[wiki] Can I replace a LAMP stack with SWI-Prolog?
PHP[wiki] Can I replace a LAMP stack with SWI-Prolog?
Raspberry[wiki] Prerequisites for Debian based systems (Ubuntu, Mint, ...)
Raspbian[wiki] Prerequisites for Debian based systems (Ubuntu, Mint, ...)
UTF-8Sec. 2.19
Ubuntu[wiki] Prerequisites for Debian based systems (Ubuntu, Mint, ...)
UnicodeSec. 2.19
ansi(color)[wiki] Controlling colored output on the terminal
apt-get[wiki] Prerequisites for Debian based systems (Ubuntu, Mint, ...)
brew[wiki] Building SWI-Prolog on MacOS (Lion and Snow Lion)
cleanupat_halt/1, thread_at_exit/1, setup_call_cleanup/3, retractall/1
copy[wiki] Windows keyboard accelerators in XPCE
dollarSec. 2.8
filterinclude/3, exclude/3
git[wiki] How to submit patches?
github[wiki] Creating and submitting extension packages for SWI-Prolog
homebrew[wiki] Building SWI-Prolog on MacOS (Lion and Snow Lion)
http-server[wiki] Running the server from Linux upstart
http_errorSec. 3.17
lion(macos)[wiki] Building SWI-Prolog on MacOS (Lion and Snow Lion)
lxc-container[wiki] Running the server from Linux upstart
macos[wiki] Building SWI-Prolog on MacOS (Lion and Snow Lion)
namespaces[wiki] How to deal with prefixes in RDF?
needs-updating[wiki] RDF Query Languages, Sec. A.6, [wiki] SWI-Prolog -- Installation on Linux, *BSD (Unix), [wiki] Graphical applications
octetSec. 2.19
paste[wiki] Windows keyboard accelerators in XPCE
pi[wiki] Prerequisites for Debian based systems (Ubuntu, Mint, ...)
port[wiki] Building SWI-Prolog on MacOS (Lion and Snow Lion)
projects[wiki] Related Web Resources
proxy[wiki] Making the server accessible at port 80
pull-request[wiki] How to submit patches?
quasiquotationjavascript/4, html/4
top-level-variableSec. 2.8
tutorials[wiki] Related Web Resources
version-7Sec. 5

Comments by Jan Wielemaker

[wiki] Wiki page at "howto/http/HelloText.txt"In particular on Unix-like systems, the web-server toplevel is typically provide ...
Sec. A.35If you table predicates with infinitely many solutions you simply run out of (ta ...
wildcard_match/2Note that - The pattern is compiled first.
phrase_from_stream/2Recent versions of this library do not use repositioning but use non-backtrackab ...
Sec. A.3.3Use assoc_to_keys/2 and length/2
current_stream/3You do not need current_stream/3 for that: ``` ?- stream_property(X, file_no(2)) ...
[wiki] How do I upload a file, preserving the file-name?`octet` should have worked as it should imply `binary`.
?=/2You forgot the negative side.
print_message/2There is no restriction on Term as long as there is a grammar rule that accepts ...
access_file/2The access_file/2 predicate is broken on Windows.
phrase_from_stream/2The stream must have the `reposition` property (see stream_property/2).
http_status_reply/4Users should *not* call this predicate directly (or in fact any other predicate ...
min_member/2This is a general property of predicates that depend on the standard of terms wh ...
rdf_resource/1AFAIK, the term _resource_ in RDF refers to URIs only.
load_html/3HTML is often illegal.
Sec. 4.7.1I think that ISO only guarantees that variables that are not unified to each oth ...
Sec. 4.24.2For example (note that =|\n|= is a newline): ?- normalize_space(atom(Out), ' \nh ...
callable/1The footnote supports that.
[wiki] Is there a true C++ binding?Thanks.
uuid/2SWI-Prolog's library(uuid) is based on the [OSSP library](http://www.ossp.org/pk ...
term_factorized/3Note that the results of this predicate are independent from the actual sharing ...
assertz/1@bug If the order of the clauses is irrelevant, it is generally better to use as ...
rdf_meta/1@see [Howto](</howto/UseRdfMeta.txt>) for a more in-depth discussion and example ...
pack_install/1pack_install/1 requires the archive package installed.
term_hash/2The predicates term_hash/2 and term_hash/4 are typically used to add indexable a ...
[wiki] Graphical applicationsThis page should point at the options to use the browser.
Sec. 5.4.3should be get_assoc/3 and dict_pairs/3.
Sec. A.6Replace with PlDoc comments; the manual version is way outdated.
[wiki] RDF Query LanguagesNeeds updating.
Sec. 4.13@see library(dcg/basics) for rules parsing and generating numbers, identifiers, ...
copysign/1Must be /2
message_queue_property/2The existence of a _named_ queue can be tested without generating an exception u ...
get_assoc/5Normally used to update the value associated with a key.
put_byte/1Note that put_byte/1 can only be used with a _binary_ stream. @see open/4, set_s ...
http_parameters/3POST data is read using http_read_data/3.
http_parse_header/2@see http_parameters/3 for deatils
Sec. 3.6@see [SWI-Prolog IDE --- Prolog Navigator](</navigator.txt>)
format/2Use the format string below to realize zero-padded integers.
repeat/0repeat/0 is commonly used for _failure driven_ loops, for example to read data.
current_stream/3@deprecated New code should use the ISO predicate stream_property/2

News articles by Jan Wielemaker

7.6.0-rc1 available -- Stable release version 7.6.0-rc has been uploaded.
Fast cars and Prolog -- Now the dust has mostly settled for me, I thought people here might be intereste ...
SWI-Prolog 7.4.0 release candidate -- After about 18 months SWI-Prolog is almost ready for its next stable version.
Doxygen plugin (helper) for Prolog -- I received an announcement from _Dr Beco_ that he wrote a plugin (helper) for th ...
SWI-Prolog 7.2.0 is available for download.
UCSD Students Contributing to SWI-Prolog -- The University of California San Diego is sponsoring a group of nine computer sc ...
Call for help: Oauth 2.0 and OpenID Connect -- After getting a message that Google will discontinue plain OpenID `login-with-go ...
Learn Prolog Now! with embedded SWISH -- I'm very pleased that [Learn Prolog Now!](http://www.learnprolognow.org/) and SW ...
Mike Elson and Matt Lilley contributed CQL: a high-level database interface -- CQL is a powerful high level abstraction of SQL queries.
Todo-Backend: a shared example to showcase backend tech stacks -- I have submitted a showcase implementation for [Todo-Backend: a shared example t ...
Markus Triska added clp(b) to SWI-Prolog -- Markus Triska, the author of SWI-Prolog's clp(fd) library, contributed a boolean constraint library, [library(clpb)](</pldoc/man?section=clpb>).
SWI-Prolog supports websockets -- As of version 7.1.19, SWI-Prolog provides support for websockets.
New edition of the SWI-Prolog manual as book -- The SWI Prolog Manual 7.1 in book form is now available worldwide.
SWISH meets clp(fd) -- The SWISH web application (SWI-Shell or SWI for Sharing, depending on your taste ...
Ann: SWI-Prolog 7.1.14 -- I have uploaded SWI-Prolog 7.1.14.
Primary git repository moved to GitHub -- The primary git repository has been moved from [www.swi-prolog.org](</git/>) to ...
The mailing list moved to Google groups -- The SWI-Prolog mailinglist has been turned into a Google Group.
SWI-Prolog's source on GitHub -- I'm moving the SWI-Prolog sources from www.swi-prolog.org to github.
[wiki] SWI-Prolog downloadsOn January 29, Markus Triska successfully defended his PhD thesis titled [Correc ...
Pengines: Web Logic Programming Made Easy -- Pengines is short for Prolog Engines.
New website -- The [SWI-Prolog](http://www.swi-prolog.org) website runs on SWI-Prolog for about 6 years. It grew out of a big mess the site was before then.

Packages by Jan Wielemaker

tot: 18
tot: 683
Write GraphML files
Show Prolog terms using graphviz
Web Service Description Language (WSDL) and SOAP
Use a browser as HTML console
An (E)SMTP client for sending mail
R Rserve client
SWI-Prolog interface to RocksDB
Run goal with resource bounds
reCAPTCHA plugin for SWI-Prolog HTTP framework
Persistent answer cache
Load and analyze ODF spreadsheets (.ods)
MIME processing library based on maildrop
Access Linux inotify API to watch file system changes
Analyse SWI-Prolog HTTP server log files
Access RDF HDT files
SWI-Prolog code for "Login with Google"
Access GeoIP library
Demo package with C code, fetching the program environment
This list contains packages whose author name, e-mail or homepage url matches the profile information.

Reviews by Jan Wielemaker

Showing 2 reviews, sorted by date entered, last review first.

Pack: sparkle

Really nice way to run SPARQL queries. With support for concurrency and auto paging this can be used for large scale federated processing of RDF. Fits great with ClioPatria's SWISH plugin. Two small points:

  • I wonder about the high-priority ?? operator. Possibly it is ok because we have module-specific operators ...
  • Is it necessary to have an explicit filter(Filter) term?
Sunday 19 April 2015, Jan Wielemaker
Pack: thousands

Note that the 6.3 development versions allow for large integers using digit groups. These groups are separated by a single space or a an underscore followed by arbitrary white space. For example

:- set_prolog_stack(global, limit(10 000 000 000)).

This practically makes this pack redundant for SWI-Prolog. It is still a useful work around for older versions and other Prolog systems.

Friday 21 June 2013, Jan Wielemaker