Downloading PAKCS

Ubuntu/Debian Packages

A package with PAKCS release 2.2.0 is available with Ubuntu 20.04. If you run this OS, PAKCS can be installed with the command

  > sudo apt install pakcs

Docker Images

Newer versions of PAKCS are also available as Docker images. Thus, if you do not want to compile PAKCS from source code (see below), e.g., since you use an unsupported operating system, you can run a Docker image of PAKCS. This image contains the interactive environment as well as some basic tools, like CPM (the Curry Package Manager), CurryCheck (a property test tool), CurryDoc (a documentation generator), CurryPP (a preprocessor implementing some extensions for Curry), and an interface viewing tool (invoked by the PAKCS command :interface). The latest docker image is based on Ubuntu (24.04) and SWI-Prolog, but everything is contained in this image. To run PAKCS with the Docker image, you need a Docker installation on your machine and run the command

  > docker run -it currylang/pakcs

This command starts the interactive PAKCS environment. However, in order to compile and execute your Curry programs stored in your local file system or to use the tools contained in the Docker image, one has to run the image with appropriate options. For this purpose, Unix/Linux users can use the PAKCS docker shell script to run PAKCS and other tools with the Docker image. For instance, to run the latest dockerized version of PAKCS, execute

  > curl -sSL -o pakcs.sh https://www.curry-lang.org/pakcs/pakcs-docker.sh
  > sh pakcs.sh

Source code installation

If you want to install some specific release of PAKCS (see below), you can download and install this release directly. These releases are intended to run on Linux or Mac OS X systems. The installation requires an installed Prolog system, e.g.:

  • SICStus-Prolog (Version 4) (recommended), or, if you do not have SICStus-Prolog,
  • SWI-Prolog (the execution with SWI-Prolog is less efficient and requires a 64-bit system, otherwise stack overflows might occur during the installation).

If they are already installed on your system and you have the names of their executables in your path (sicstus for SICStus-Prolog, swipl for SWI-Prolog), you can install PAKCS by decoding the tar archive and a "make" command, e.g., by

  tar xvzf pakcs-<version>-xxx-Linux.tar.gz
  cd pakcs-<version>
  make 

(see also the installation instructions for more details).

If you install PAKCS from the source code distribution, you need also the Glasgow Haskell Compiler and Cabal, a Haskell package management system, to compile the front end of PAKCS. For instance, if you run Ubuntu Linux, you can easily install these packages by

  sudo apt-get install ghc cabal-install

Below you will the latest version of PAKCS and some older major releases. The following material is useful if you want to install the PAKCS distribution:

Development release

PAKCS Version 3.8.0 (13/11/24)

Description File
Source code (requires Haskell stack v2.x) pakcs-3.8.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-3.8.0-amd64-Linux.tar.gz (built on Debian 11)
Manual pakcs-3.8.0-manual.pdf

Current release:

PAKCS Version 3.7.2 (20/09/24)

Description File
Source code (requires Haskell stack v2.x) pakcs-3.7.2-src.tar.gz
Linux / x86_64 (64bit) pakcs-3.7.2-amd64-Linux.tar.gz (built on Debian 11)
Manual pakcs-3.7.2-manual.pdf

Older releases:

PAKCS Version 3.7.0 (14/04/24)

Description File
Source code (requires Haskell stack v2.x) pakcs-3.7.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-3.7.0-amd64-Linux.tar.gz (built on Debian 11)
Manual pakcs-3.7.0-manual.pdf

PAKCS Version 3.6.0 (10/11/23)

Description File
Source code (requires Haskell stack v2.x) pakcs-3.6.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-3.6.0-amd64-Linux.tar.gz (built on Debian 10)
Manual pakcs-3.6.0-manual.pdf

PAKCS Version 3.5.2 (18/08/23)

Description File
Source code (requires Haskell stack v2.x) pakcs-3.5.2-src.tar.gz
Linux / x86_64 (64bit) pakcs-3.5.2-amd64-Linux.tar.gz (built on Debian 10)
Manual pakcs-3.5.2-manual.pdf

PAKCS Version 3.5.1 (13/03/23)

Description File
Source code (requires Haskell stack v2.x) pakcs-3.5.1-src.tar.gz
Linux / x86_64 (64bit) pakcs-3.5.1-amd64-Linux.tar.gz (built on Debian 10)
Manual pakcs-3.5.1-manual.pdf

PAKCS Version 3.5.0 (08/10/22)

Description File
Source code (requires Haskell stack v2.x) pakcs-3.5.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-3.5.0-amd64-Linux.tar.gz (built on Debian 10)
Manual pakcs-3.5.0-manual.pdf

PAKCS Version 3.4.2 (20/12/21)

Description File
Source code (requires Haskell stack v2.x) pakcs-3.4.2-src.tar.gz
Linux / x86_64 (64bit) pakcs-3.4.2-amd64-Linux.tar.gz (built on Debian 9.13)
Manual pakcs-3.4.2-manual.pdf

PAKCS Version 3.3.0 (15/02/21)

Release with class Data and new base library structure:

Description File
Source code (requires Haskell stack v2.x) pakcs-3.3.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-3.3.0-amd64-Linux.tar.gz (built on Debian 9.4)
Manual pakcs-3.3.0-manual.pdf

PAKCS Version 3.2.0 (30/11/20)

Release with class Data and new base library structure:

Description File
Source code (requires Haskell stack v2.x) pakcs-3.2.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-3.2.0-amd64-Linux.tar.gz (built on Debian 9.4)
Manual pakcs-3.2.0-manual.pdf

PAKCS Version 2.3.0 (24/11/20)

Description File
Source code (requires ghc) pakcs-2.3.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-2.3.0-amd64-Linux.tar.gz (built on Debian 9.4)
Manual pakcs-2.3.0-manual.pdf

PAKCS Version 2.2.0 (30/10/19)

Description File
Source code (requires ghc) pakcs-2.2.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-2.2.0-amd64-Linux.tar.gz (built on Debian 9.4)
Manual pakcs-2.2.0-manual.pdf

PAKCS Version 2.1.2 (23/09/19)

Description File
Source code (requires ghc) pakcs-2.1.2-src.tar.gz
Linux / x86_64 (64bit) pakcs-2.1.2-amd64-Linux.tar.gz (built on Debian 9.4)
Manual pakcs-2.1.2-manual.pdf

PAKCS Version 2.1.1 (11/02/19)

Description File
Source code (requires ghc) pakcs-2.1.1-src.tar.gz
Linux / x86_64 (64bit) pakcs-2.1.1-amd64-Linux.tar.gz (built on Debian 9.4)
Manual pakcs-2.1.1-manual.pdf

PAKCS Version 2.1.0 (30/01/19)

Description File
Source code (requires ghc) pakcs-2.1.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-2.1.0-amd64-Linux.tar.gz (built on Debian 9.4)
Manual pakcs-2.1.0-manual.pdf

PAKCS Version 2.0.2 (15/11/18)

Description File
Source code (requires ghc) pakcs-2.0.2-src.tar.gz
Linux / x86_64 (64bit) pakcs-2.0.2-amd64-Linux.tar.gz (built on Debian 9.4)
Manual pakcs-2.0.2-manual.pdf

PAKCS Version 2.0.1 (31/01/18)

Description File
Source code (requires ghc) pakcs-2.0.1-src.tar.gz
Linux / x86_64 (64bit) pakcs-2.0.1-amd64-Linux.tar.gz (built on Debian 8.9)
Manual pakcs-2.0.1-manual.pdf

Older releases without type classes:

PAKCS Version 1.15.0-b22 (04/07/18)

Description File
Source code (requires ghc) pakcs-1.15.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-1.15.0-amd64-Linux.tar.gz (built on Debian 8.10)
Manual pakcs-1.15.0-manual.pdf

PAKCS Version 1.14.2 (24/02/17)

Description File
Source code (requires ghc) pakcs-1.14.2-src.tar.gz
Linux / x86_64 (64bit) pakcs-1.14.2-amd64-Linux.tar.gz (built on Debian 8.7)
Manual pakcs-1.14.2-manual.pdf

PAKCS Version 1.14.0 (19/04/16)

Description File
Source code (requires ghc) pakcs-1.14.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-1.14.0-amd64-Linux.tar.gz (built on Debian 8.4)

PAKCS Version 1.13.1 (02/10/15)

Description File
Source code (requires ghc) pakcs-1.13.1-src.tar.gz
Linux / x86_64 (64bit) pakcs-1.13.1-amd64-Linux.tar.gz (built on Debian 8.1)

PAKCS Version 1.13.0 (24/08/15)

Description File
Source code (requires ghc) pakcs-1.13.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-1.13.0-amd64-Linux.tar.gz (built on Debian 8.1)

PAKCS Version 1.12.0 (15/07/15)

(with new Haskell-like record syntax!)
Description File
Source code (requires ghc) pakcs-1.12.0-src.tar.gz
Linux / x86_64 (64bit) pakcs-1.12.0-amd64-Linux.tar.gz (built on Debian 8.1)

PAKCS Version 1.11.5 (28/02/15)

Description File
Source code (requires ghc) pakcs-1.11.5-src.tar.gz
Linux / x86_64 (64bit) pakcs-1.11.5-amd64-Linux.tar.gz (built on Debian 7.8)

PAKCS Version 1.11.4 (23/10/14)

Description File
Source code (requires ghc) pakcs-1.11.4-src.tar.gz
Linux / x86 (32bit) pakcs-1.11.4-i386-Linux.tar.gz (built on Debian 7.3)
Linux / x86_64 (64bit) pakcs-1.11.4-amd64-Linux.tar.gz (built on Debian 7.3)

PAKCS Version 1.11.3 (21/07/14)

Description File
Source code (requires ghc) pakcs-1.11.3-src.tar.gz
Linux / x86 (32bit) pakcs-1.11.3-i386-Linux.tar.gz (built on Debian 7.3)
Linux / x86_64 (64bit) pakcs-1.11.3-amd64-Linux.tar.gz (built on Debian 7.3)

PAKCS Version 1.11.2 (06/09/13)

Description File
Source code (requires ghc) pakcs-1.11.2-src.tar.gz
Linux / x86 (32bit) pakcs-1.11.2-i386-Linux.tar.gz (built on Debian 6.0)
Linux / x86_64 (64bit) pakcs-1.11.2-amd64-Linux.tar.gz (built on Debian 6.0)

PAKCS Version 1.11.1 (13/02/13)

Description File
Source code (requires ghc) pakcs-1.11.1-src.tar.gz
Linux / x86 (32bit) pakcs-1.11.1-i386-Linux.tar.gz (built on Debian 6.0)
Linux / x86_64 (64bit) pakcs-1.11.1-amd64-Linux.tar.gz (built on Debian 6.0)

PAKCS Version 1.11.0 (31/10/12)

Description File
Source code (requires ghc) pakcs-1.11.1-src.tar.gz
Linux / x86 (32bit) pakcs-1.11.1-i386-Linux.tar.gz (built on Debian 6.0)
Linux / x86_64 (64bit) pakcs-1.11.1-amd64-Linux.tar.gz (built on Debian 6.0)
Description File
Source code (requires ghc) pakcs-1.11.0-src.tar.gz
Linux / x86 (32bit) pakcs-1.11.0-i386-Linux.tar.gz (built on Debian 6.0)
Linux / x86_64 (64bit) pakcs-1.11.0-amd64-Linux.tar.gz (built on Debian 6.0)

PAKCS Version 1.10.1 (05/10/12)

Description File
Source code (requires ghc) pakcs_1.10.1_src.tar.gz
Linux / x86 (32bit) pakcs_1.10.1_Linux.tar.gz (built on Debian 6.0)

PAKCS Version 1.10.0 (06/06/12)

Description File
Source code (requires ghc) pakcs_1.10.0_src.tar.gz
Linux / x86 pakcs_1.10.0_Linux.tar.gz (built on Debian 5.0)

PAKCS Version 1.9.2 (30/04/11)

Description File
Source code (requires ghc) pakcs_1.9.2_src.tar.gz
Linux / x86 pakcs_1.9.2_Linux.tar.gz (built on Debian 4.0)
SunOS / Sparc pakcs_1.9.2_SunOS.tar.gz (built on SunOS 5.10)
Mac OS X / Intel pakcs_1.9.2_Darwin.tar.gz

PAKCS Version 1.9.1 (13/01/09)

Description File
Source code (requires ghc) pakcs_1.9.1_src.tar.gz
Linux / x86 pakcs_1.9.1_Linux.tar.gz (built on Debian 4.0)
SunOS / Sparc pakcs_1.9.1_SunOS.tar.gz (built on SunOS 5.10)
Mac OS X / Intel pakcs_1.9.1_Darwin.tar.gz

PAKCS Version 1.9.0 (14/12/07)

Description File
Source code (requires ghc) pakcs_1.9.0_src.tar.gz
Linux / x86 pakcs_1.9.0_Linux.tar.gz (built on SuSE 9.1)
SunOS / Sparc pakcs_1.9.0_SunOS.tar.gz (built on SunOS 5.10)
Mac OS X / PowerPC pakcs_1.9.0_Darwin.tar.gz

PAKCS Version 1.8.1 (31/10/07)

Description File
Source code (requires ghc) pakcs_1.8.1_src.tar.gz
Linux / x86 pakcs_1.8.1_Linux.tar.gz (built on SuSE 9.1)
SunOS / Sparc pakcs_1.8.1_SunOS.tar.gz (built on SunOS 5.10)
Mac OS X / PowerPC pakcs_1.8.1_Darwin.tar.gz

PAKCS Version 1.8.0 (27/03/07)

Description File
Source code (requires ghc) pakcs_1.8.0_src.tar.gz
Linux / x86 pakcs_1.8.0_Linux.tar.gz (built on SuSE 9.1)
SunOS / Sparc pakcs_1.8.0_SunOS.tar.gz (built on SunOS 5.10)
Mac OS X / PowerPC pakcs_1.8.0_Darwin.tar.gz

PAKCS Version 1.7.3 (27/02/07)

Description File
Source code (requires ghc) pakcs_1.7.3_src.tar.gz
Linux / x86 pakcs_1.7.3_Linux.tar.gz (built on SuSE 9.1)
SunOS / Sparc pakcs_1.7.3_SunOS.tar.gz (built on SunOS 5.10)
Mac OS X / PowerPC pakcs_1.7.3_Darwin.tar.gz

PAKCS Version 1.7.2 (29/03/06)

Description File
Source code (requires ghc) pakcs_1.7.2_src.tar.gz
Linux / x86 pakcs_1.7.2_Linux.tar.gz (built on SuSE 9.1)
SunOS / Sparc pakcs_1.7.2_SunOS.tar.gz (built on SunOS 5.9)
Mac OS X / PowerPC pakcs_1.7.2_Darwin.tar.gz

Note: This version is almost compatible with the Curry language as described in the Curry report version 0.8.2.

PAKCS Version 1.7.1 (13/03/06)

Description File
Source code (requires ghc) pakcs_1.7.1_src.tar.gz
Linux / x86 pakcs_1.7.1_Linux.tar.gz (built on SuSE 9.1)
SunOS / Sparc pakcs_1.7.1_SunOS.tar.gz (built on SunOS 5.9)
Mac OS X / PowerPC pakcs_1.7.1_Darwin.tar.gz

Note: In contrast to older releases (1.6.x), this version contains a new improved front-end adapted from the Münster Curry Compiler. Furthermore, this version is also executable with the free software system SWI-Prolog.

PAKCS Version 1.7.0 (06/12/05)

Description File
Source code (requires ghc) pakcs_1.7.0_src.tar.gz
Linux / x86 pakcs_1.7.0_Linux.tar.gz (built on SuSE 9.1)
SunOS / Sparc pakcs_1.7.0_SunOS.tar.gz (built on SunOS 5.9)

Note: In contrast to older releases (1.6.x), this version contains a new improved front-end adapted from the Münster Curry Compiler. Furthermore, this version is also executable with the free software system SWI-Prolog.

The following older releases require an installed Java system:

PAKCS Version 1.6.1 (30/09/05)

Description File
Source code pakcs_1.6.1.tgz
Source code with precompiled libraries pakcs_1.6.1_lib.tgz

Note: The distribution with precompiled libraries is slightly larger but needs considerable less time for the installation.

PAKCS Version 1.6.0 (15/10/04)

Description File
Source code pakcs_1.6.0.tgz