Free Software Foundation!

Join now


From Free Software Directory
Jump to: navigation,

Equational programming language

  • " Q is no longer supported, see Pure instead.

Please note that Q has been superseded by the Pure programming language, so please head over to the new website and download the latest version of the Q successor today! "

Q (which stands for 'equational') is a functional programming language based on the term rewriting calculus. You specify a system of equations which the interpreter uses as rewrite rules to reduce expressions to normal form. Q lets you formulate programs in a high-level, declarative style. It is useful for scientific programming and other advanced applications, and also as a sophisticated kind of desktop calculator. Features include advanced symbolic expression manipulation, a fast bytecode interpreter, a collection of built-in types, support for lazy evaluation, exception handling, and multithreading, a libtool-based C interface, a standard library with various list processing functions, and add-on modules for interfacing with other programs.


User manual available in HTML format from; User manual available in PDF format from; User FAQ available in HTML format from;


Download version 7.11 (stable)
released on 7 March 2008

VCS Checkout


Related Projects


LicenseVerified byVerified onNotes
GPLv2orlaterJanet Casey3 July 2002

Leaders and contributors

Albert Graef Maintainer

Resources and communication

Audience Resource type URI
Developer VCS Repository Webview
Developer Mailing List Info/Archive
Support Mailing List Info/Archive

Software prerequisites

Kind Description
Weak prerequisite IBM Open Data Explorer (DX module)
Weak prerequisite Tcl/Tk (Tk module)
Weak prerequisite Emacs (Q mode)
Required to use GNU multiprecision library (GMP) 3.0 or later
Required to build GNU multiprecision library (GMP) 3.0 or later
Weak prerequisite GNU Octave (Octave module)

This entry (in part or in whole) was last reviewed on 23 January 2017.


Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.

The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.

Personal tools