Download SWI-Prolog development versions
Linux versions are
often available as a package for your distribution. We collect
information about available packages and issues for building on specific
distros here.
| Binaries | ||
|---|---|---|
| 8,975,048 bytes | SWI-Prolog/XPCE 5.11.37 for Windows NT/2000/XP/Vista/7
Self-installing executable for MS-Windows. Installs swipl-win.exe and swipl.exe. Works on Windows NT/2000/XP/Vista/7. This binary is linked against GMP 5.0.2, which implies that it is covered by the LGPL-V3 license. See below. | |
| 9,190,596 bytes | SWI-Prolog/XPCE 5.11.37 for Windows XP/Vista/7 64-bit edition
Self-installing executable for Microsoft's XP/Vista/7 64-bit editions. See the reference manual for deciding on whether to use the 32- or 64-bits version. This binary is linked against GMP 4, which implies that it is covered by the LGPL-V3 license. See below. | |
| 10,661,731 bytes | SWI-Prolog/XPCE 5.11.37 for MacOSX 10.7 (Lion) on intel
Installer with binaries created using Macports.
Installs | |
| 12,535,739 bytes | SWI-Prolog/XPCE 5.11.25 for MacOSX 10.6 (Snow Leopard) on intel
Installer with binaries created using Macports.
Installs | |
| 10,768,965 bytes | SWI-Prolog/XPCE 5.11.25 for MacOSX 10.5 (Leopard) on intel
Installer with binaries created using Macports.
Installs | |
| Sources | ||
| 13,460,771 bytes | SWI-Prolog source for 5.11.37
Sources in | |
| Documentation | ||
| 2,104,674 bytes | SWI-Prolog 5.11.37 reference manual in PDF
SWI-Prolog reference manual as PDF file. This does not include the package documentation. | |
| Package binaries | ||
| 902,793 bytes | Package space (version 0.1.2) for Windows NT/2000/XP/Vista/7
Binary installer for the spatial indexing package space | |
| 1,308,263 bytes | Package space (version 0.1.2) for Windows XP/Vista/7 64-bit edition
Binary installer for the spatial indexing package space | |
| Show all files | ||
About the development releases
The development branches have their own GIT repository at the address below. See the general GIT instructions for details.
% git clone git://www.swi-prolog.org/home/pl/git/pl-devel.git
5.11.x planned enhancements
SWI-Prolog 5.10.0 was released a bit early, in the sense that two enhancements in memory management are not or only partly realised. These are moved to the 5.11.0 agenda:
- Reduce trail-stack usage. (partly)
- Provide generational garbage collection.
Otherwise, priorities have not yet settled. Just to show this doesn't mean there are no plans, some points in random order. Feel free to suggest more or -better- help :-)
- Kernel issues
- Better indexing, including support for tries (
,
multi-argument JIT indexing is provided as of 5.11.29. - Tabling
- Further cleanup of the VM instruction API to simplify maintenance and future enhancements
- Rewrite more/all term-traversing functions to avoid the use of C-based recursion. This allows processing more deeply nested terms and proper resource-exceptions if there is insufficient memory
- Handle malloc() failures with exceptions rather then a fatal-error.
- Better indexing, including support for tries (
- Libraries
- RDF enhancements: better write-concurrency, get more out of named graphs and handle owl:sameAs mappings efficiently.
- Move many goodies from ClioPatria to the HTTP and semweb libraries.
- Community and development issues
- Come to a better model for dealing with contributed code. This model should allow for more independent and distributed development and make it easy for users to download and install packages.
License issues of the binaries
The SWI-Prolog sources are covered by version 2 or later of the GNU licenses (details). The binaries are currently linked against recent versions of the GMP bignum library, which is licensed under LGPL version 3. This implies that the distributed SWI-Prolog binaries are covered by version 3 of these licenses.
It is possible to build SWI-Prolog with older versions of GMP (e.g., version 3) or without GMP.