Download

Latest stable version: 3.89.1
Release date: February 18, 2025

Sponsor Star

Requirements

Logtalk runs on any operating-system with a standards-compliant modern Prolog compiler. The interface between Logtalk and a specific backend Prolog compiler is accomplished using a small adapter file. The Logtalk distribution includes adapter files for all supported Prolog compilers:

Experimental support:

Be sure to install the Prolog systems that you want to use as backend compilers before installing Logtalk. In general, it is recommended that you install the most recent versions of the Prolog systems.

The experimental label means that some Logtalk features may not work as expected due to the backend Prolog compiler being under development and thus not stable and/or not (yet) providing required standard features. It may also apply to legacy Prolog compilers that are no longer maintained.

Previous Logtalk 3.x versions and legacy 2.x versions provide support for several other Prolog compilers, which are no longer supported due to lack of compliance with both official and de facto standards.

License

Logtalk is an open-source programming language, distributed under the Apache License 2.0. The copyright notice and license apply to all files in this release (including sources, documentation, and examples) unless otherwise explicitly stated (see the NOTICE.txt file for details on bundled third-party resources).

Git repo

The Logtalk git repo is currently hosted at GitHub. Follow these steps for running Logtalk development versions. See the release notes for the latest changes.

You may keep up to date on development changes by subscribing to the Logtalk commits RSS feed.

Sources

logtalk-3.89.1.tar.bz2
77c2aef3cce9939ced745cc2e3edfe2d17174401b7a43d225b2b06671f04e3b5 (SHA-256)

Includes the HTML and Texinfo versions of the Handbook and the APIs documentation. The bundled INSTALL.md file contains manual installation instructions.

Installers

Be sure to read the README.md, CUSTOMIZE.md, and QUICK_START.md files on the Logtalk user directory for important information, including instructions on how to customize and run Logtalk. For Windows users, this information is also available from the Logtalk program group in the Start Menu.

The following installers are available for the latest stable version:

macOS

Installs Logtalk on /opt/local/share/ with integration scripts for supported Prolog compilers on /opt/local/bin. Creates an /Applications/Logtalk folder with links to the installed files. Not compatible with macOS 15.x (Sequoia).

logtalk-3.89.1.pkg.zip
026390d24f0b1da7cea7870d05058d9df3551be5b890a01ee71ed40f8b25d0de (SHA-256)

MacPorts

MacPorts users may use the command sudo port install logtalk (or sudo port upgrade logtalk) in order to install (or upgrade) Logtalk. Check first that the port is up-to-date. Be sure to set the LOGTALKHOME and LOGTALKUSER environment variables as described in the command output.

Homebrew

Homebrew users may use the command brew install logtalk (or brew upgrade logtalk) in order to install (or upgrade) Logtalk. Check first that the formula is up-to-date. Be sure to set the LOGTALKHOME and LOGTALKUSER environment variables as described in the command output.

Linux (e.g. Centos, Fedora)

Installs Logtalk on /usr/local/share with integration scripts for supported Prolog compilers on /usr/local/bin.

logtalk-3.89.1-1.noarch.rpm
5d0e5b16a4eccd4d4aa66776febc178873489ef2a4495be6f6dd5364ddfb9dd2 (SHA-256)

Package installation from the command-line is highly recommended:

$ sudo rpm -i logtalk-3.89.1-1.noarch.rpm

Logout and login after running the installer to activate the default values for the Logtalk environment variables.

Debian (e.g. Ubuntu)

Requires dpkg 1.15.0 or a later version. Installs Logtalk on /usr/share with integration scripts for supported Prolog compilers on /usr/bin.

logtalk_3.89.1-1_all.deb
0e68932aeca50911dc2838d6f0ee1e425a9d61a2b6e269946b982801a2e0e1e6 (SHA-256)

Package installation from the command-line is highly recommended:

$ sudo dpkg -i logtalk_3.89.1-1_all.deb

Logout and login after running the installer to activate the default values for the Logtalk environment variables.

Windows

Be sure to install a compatible Prolog compiler before running the Logtalk installer. Creates a Logtalk program group in the Start Menu with integration shortcuts for supported Prolog compilers and shortcuts for accessing the Logtalk documentation. Can be used by both admin and non-admin users.

Installation video, courtesy of Paul Brown.

logtalk-3.89.1.exe
916bc567ce61a2a821b500497a72fd83f9f6e10995fee29402da86c50e7ef7ba (SHA-256)
VirusTotal scan results

Logtalk is also available as a Chocolatey package and can be installed or updated using the choco install logtalk and choco upgrade logtalk commands. Alternatively, on Windows 10 or Windows Server 2019, you can use the Windows Subsystem for Linux (WSL) and install Logtalk using one of the Linux installers listed on this page.

Logtalk is also available as a winget package, thanks to the GitHub user SpecterShell, and can be installed or updated using the winget install logtalk and winget upgrade logtalk commands.

Installing on Windows 10 may require temporarily turning off Ransomware protection (in the Windows Defender Security Center preferences) if enabled as the Logtalk installer creates the the Logtalk user directory inside the Documents directory by default.

Automatically generated installers for the latest git versions can be downloaded from AppVeyor.

SWI-Prolog packs

Logtalk is also available as a SWI-Prolog pack. The pack is handy for deployment but not ideal for development, however, as all the files in the distribution (manuals, examples, …) are buried in a relatively deep sub-directory. The pack can be easily installed by typing the query pack_install(logtalk) at the top-level (use the pack_info(logtalk) query after installation to find the installation directory). When upgrading an older pack, use pack_install(logtalk, [update(true)]) or simply pack_remove(logtalk) followed by pack_install(logtalk). See the pack-specific README.md file for details. Also available as a manual download:

logtalk-3.89.1.tgz
b88b675c55fbfb5c0f4c23165f3783fe93730bd20f77f1278393dadc8cdc2b70 (SHA-256)

In this case, change directory to the download directory, start SWI-Prolog, and run the query pack_install('logtalk-3.89.1.tgz').

There’s also an experimental pack that encapsulates de Logtalk compiler and runtime in a logtalk module. See the pack specific README.md file for details. This pack is only available as a manual download:

logtalk-experimental-3.89.1.tgz
4b7deffa0197e35e5cfa5e07c26f6cf6a8bb8deb457205201a0266aa8fd19ee7 (SHA-256)

In this case, change the current directory to the download directory, start SWI-Prolog, and run the query pack_install('logtalk-experimental-3.89.1.tgz').

Arch Linux package

Logtalk is also available as an Arch Linux package contributed by Ebrahim Azarisooreh.

Documentation

HTML, ePub, PDF, and Texinfo versions of the Handbook (includes a tutorial, the User Manual, the Reference Manual, and the FAQ). Note that the HTML and Texinfo versions are included in the source and binary packages.

logtalk-manuals-3.89.1.tgz
d8604904f3c4756f289bd4f928326004c0d4adad5f28657005c6d5b6b809dde1 (SHA-256)

Docker images

Docker images are available using selected backend Prolog compilers and also including Jupyter and the Logtalk kernel.

The portable Docker image can be used as a dev container. An example of a minimal .devcontainer/devcontainer.json file using SWI-Prolog as the backend for use with VSCode is:

{
    "name": "Logtalk",
    "image": "logtalk/logtalk3-portable:latest",
    "customizations": {
        "vscode": {
            "extensions": [
                "logtalkdotorg.logtalk-extension-pack"
            ],
            "settings": {
                "logtalk.home.path": "/usr/local/share/logtalk",
                "logtalk.user.path": "/root/logtalk",
                "logtalk.backend": "swi"
            }
         }
    }
}

The possible values for the logtalk.backend setting are: b, ciao, cx, eclipse, gnu, swi, trealla, xsb, and yap. These are the subset of supported backends that are installed in the portable Docker image.

Jupyter kernel

A Jupyter kernel is available from PyPI and Conda supporting Logtalk notebooks using selected backend Prolog compilers. See e.g. Binder for an online example.

Older versions

Older releases are available here (but note that time stamps do not match the release dates due to all the moving of these files between servers over the years).

Sponsorship

If you want to express your appreciation for Logtalk and help keep it a sustainable project, your sponsorship is much appreciated. Both one-time sponsorships and recurring sponsorships are available, hopefully allowing everyone to show their love and support for Logtalk.

Registration

Consider registering if you become a Logtalk user.