pqR - a pretty quick version of R

pqR is a new version of the R interpreter. It is based on R-2.15.0 and later versions distributed by the R Core Team (at r-project.org), and is now compatible with R-2.15.1, with many features from later R Core releases. It improves on the R Core version in many ways, such as:

  • Speeds up many functions, as well as the general operation of the interpreter.
  • Automatically performs some numerical computations in parallel on multi-core processors.
  • Extends the R language to allow reliable code to be written more easily.
  • Has a preliminary facility for automatic differentiation.

The current stable release: pqR-2020-07-23

This release includes preliminary implementations of automatic differentiation and of arithmetic operations on lists (recursively applying the operation to list elements). These new features may have bugs and inefficiencies, but the release should be stable in other respects. You can read about these new features by looking at the output of help(Gradient) and help(Listops).

This release also has a few bug fixes and installation changes, such as to allow use of gcc-10. The default location of the pqR package repository has also changed.

For details, see the NEWS file (which is also included in the distribution below).

How to install pqR

Currently, pqR is distributed only in source form, and must be compiled on your machine before you can use it. The process is very similar to building R Core versions from source.

Linux systems will usually have all or most of the utilities needed to build pqR, or they are easily installed with a Linux package manager. For a Mac, you will need to install Apple's command-line tools software and a Fortran compiler; parallel computation using "helper threads" requires installing a non-Apple C compiler that supports OpenMP. To install on a MS Windows system, you will need to first install a set of tools, including C and Fortran compilers.

Detailed installation instructions are linked to below (they are also in the source tarball you will download):

The pqR source needed for installation is in the following gzipped tar file:

pqR-2020-07-23.tar.gz
You can verify download integrity by checking the sha1sum.

Unpack this file with the "gunzip" and "tar" commands (many "tar" programs will do the gunzip automatically, or it may have been done by the download softare). Configuration, compilation, and installation can then be done in the same way as for R-2.15.0 (which is similar to later R Core releases), but there are some additional options for pqR. Refer to the file `INSTALL' for the installation instructions for Unix-like systems, or `src/gnuwin32/INSTALL' for instructions on installing on MS Windows. These instructions have been expanded to be more detailed than in R-2.15.0.

For a Windows install, you will also also need to download either pqR-win-extras-32.tar.gz or pqR-win-extras-64.tar.gz.

The pqR wiki contains more information on systems on which pqR has been tested, including the configuration options that were used, and details of compilers used.

The pqR package repository

A repository of packages known to work with pqR (and with each other) is available at http://repos.pqR-project.org. It is used by default by pqR, with CRAN then examined for packages that are not in the pqR repository. Not all packages from CRAN will work with pqR, since some depend on a version of R later than 2.15.1. Note that the pqR repository is not continuously updated with new packages from CRAN; it may be updated now and then.

See the pqR wiki for more information on this repository.

Reporting bugs

The pqR issues page has reports of bugs and other issues. Please report bugs you find there.

More information

For more information on pqR and R in general, see the following manuals, which have been updated where required with information on pqR:

There is also a FAQ (or as PDF), which has not been updated for pqR.

The pqR wiki has additional current information on pqR. This includes information on systems on which pqR has been tested, and packages tested with pqR.

My blog, at radfordneal.wordpress.com, has a series of posts discussing pqR, as follows (most recent first):

Some of these posts refer to my set of speed tests for R.

Previous releases

Here are the gzipped source tar files for major previous releases:
pqR-2019-02-19
pqR-2019-01-25
pqR-2018-11-18
pqR-2017-06-09
pqR-2016-10-24
pqR-2016-10-05
pqR-2016-06-24
pqR-2015-09-14
pqR-2015-07-11
pqR-2015-06-24
pqR-2014-11-16
pqR-2014-09-30
pqR-2014-06-19
pqR-2014-02-23
pqR-2013-12-29
pqR-2013-07-22
pqR-2013-06-28
pqR-2013-06-20 (first publicised release)

Source code repository

pqR is an open-source project licensed under the GPL.

The git repository for the source code and development history of pqR is at http://github.com/radfordneal/pqR, and also at http://gitlab.com/radfordneal/pqR. The current release is on branch Release-2020-07-23. See the MODS file in that branch (or the mods-dir directory in development branches) for information on how branches in the git repository are organized. These branches also document how pqR differs from R-2.15.0.