GNU APL Rho, rho, rho of X

Always equals 1

Rho is dimension, rho rho rank.

APL is fun!



Richard M. Stallman, 1969









GNU APL is a free interpreter for the programming language APL.



The APL interpreter is an (almost) complete implementation of ISO standard 13751 aka. Programming Language APL, Extended.



The APL interpreter has implemented: nested arrays and related functions

complex numbers, and

a shared variable interface In addition, GNU APL can be scripted. For example,



GNU APL was written and is being maintained by Jürgen Sauermann. is a free interpreter for the programming language APL.The APL interpreter is an (almost) complete implementation ofaka.The APL interpreter has implemented:In addition,can be scripted. For example, this HTML page is the output of a CGI script written in APL.GNU APL was written and is being maintained by Jürgen Sauermann.

Downloading and Installing GNU APL GNU APL should be available on every apl) and at Normal Installation of GNU APL The normal (and fully supported) way to install GNU APL is this: Visit one of the GNU mirrors and download the tar file apl-1.8.tar.gz in directory apl. Unpack the tar file: tar xzf apl-1.8.tar.gz Change to the newly created directory: cd apl-1.8 Read (and follow) the instructions in files INSTALL and README-* GNU APL for WINDOWs GNU APL compiles under CYGWIN, (see apl.exe that may run under CYGWIN lives in the download area. Use at your own risk and see README-5-WINDOWS for further information. Subversion (SVN) repository for GNU APL You can also check out the latest version of GNU APL from its subversion repository on Savannah. The subversion command to do that is:



svn co http://svn.savannah.gnu.org/svn/apl/trunk



Here is RPMs for GNU APL For RPM based GNU/Linux distributions we have created source and binary RPMs. Look for files apl-1.8-0.i386.rpm (binary RPM for i386) or apl-1.8-0.src.rpm (source RPM). If you encounter a problem with these RPMs, then please report it, but with a solution, since the maintainer of GNU APL may use a GNU/Linux distribution with a different package manager. Debian packages for GNU APL For Debian based GNU/Linux distributions we have created source and binary packages for Debian. Look for files apl-1.8-1_i386.deb (binary Debian package for i386) or apl-1.8-1.debian.tar.gz (Debian source package). If you encounter a problem with these packages, then please report it, but with a solution, since the maintainer of GNU APL may use a GNU/Linux distribution with a different package manager. GNU APL Binary If you just want to quickly give GNU APL a try, and if you are very lucky then you may be able to start the compiled GNU APL binary apl in the directory apl rather than installing the entire packet . The binary MAY run on a 32-bit i686 Ubuntu. Chances are, however, that it does NOT work, Please DO NOT report any problems if the binary does not run on your machine. Instead use the standard installation method above.



Note: The program APnnn (a support program for shared variables) is not provided in binary form, so you should start the apl binary with command line option --noSV. Note as well that the binary apl will not be updated with every GNU APL release. Therefore it will contain errors that have been corrected already. GNU APL Online As of recently, there is an (experimental) online version of GNU APL. It is intended to give you an idea of how GNU APL will look like if you install it on your computer. See GNU APL on Docker For those who live in the cloud there is a small Docker container with Alpine GNU/Linux, GNU APL, and the optional libraries (SQLite, Postgres, FFT). See GNU APL should be available on every GNU mirror (in directory) and at https://ftp.gnu.org The normal (and fully supported) way to install GNU APL is this:GNU APL compiles under CYGWIN, (see www.cygwin.org ), provided that the necessary libraries are installed. A 32-bitthat may run under CYGWIN lives in the download area. Use at your own risk and seefor further information.You can also check out the latest version of GNU APL from its subversion repository on Savannah. The subversion command to do that is:Here is more information about using Subversion with GNU APL.For RPM based GNU/Linux distributions we have created source and binary RPMs. Look for files(binary RPM for i386) or(source RPM). If you encounter a problem with these RPMs, then please report it, but with a solution, since the maintainer of GNU APL may use a GNU/Linux distribution with a different package manager.For Debian based GNU/Linux distributions we have created source and binary packages for Debian. Look for files(binary Debian package for i386) or(Debian source package). If you encounter a problem with these packages, then please report it, but with a solution, since the maintainer of GNU APL may use a GNU/Linux distribution with a different package manager.If you just want to quickly give GNU APL a try, and if you are very lucky then you may be able to start the compiled GNU APL binaryin the directoryrather than installing the entire packet . The binary MAY run on a 32-bit i686 Ubuntu. Chances are, however, that it does NOT work, Please DO NOT report any problems if the binary does not run on your machine. Instead use the standard installation method above.The program(a support program for shared variables) is not provided in binary form, so you should start thebinary with command line option --noSV. Note as well that the binarywill not be updated with every GNU APL release. Therefore it will contain errors that have been corrected already.As of recently, there is an (experimental) online version of GNU APL. It is intended to give you an idea of how GNU APL will look like if you install it on your computer. See http://juergen-sauermann.de/try-GNU-APL For those who live in the cloud there is a small Docker container with Alpine GNU/Linux, GNU APL, and the optional libraries (SQLite, Postgres, FFT). See https://hub.docker.com/r/juergensauermann/gnu-apl . A larger container with GNU APL 1.8 is: https://hub.docker.com/r/juergensauermann/gnu-apl-1.8

Reporting Bugs GNU APL is made up of more than 100,000 lines of C++ code. In a code of that size, programming mistakes are inevitable. Even though mistakes are hardly avoidable, they can be corrected once they are found. In order to improve the quality of GNU APL, we would like to encourage you to report errors that you find in GNU APL to



The emails that we like the most are those that include a small example of how to reproduce the fault. You can see all previous postings to this mailing list at GNU APL is made up of more than 100,000 lines of C++ code. In a code of that size, programming mistakes are inevitable. Even though mistakes are hardly avoidable, they can beonce they are found. In order to improve the quality of GNU APL, we would like to encourage you to report errors that you find in GNU APL to bug-apl@gnu.org The emails that we like the most are those that include a small example of how to reproduce the fault. You can see all previous postings to this mailing list at http://lists.gnu.org/archive/html/bug-apl/ or subscribe to it at https://lists.gnu.org/mailman/listinfo/bug-apl

Documentation We have an free documentation on APL in general (volunteers welcome) that can be published here. A "Quick start" document for APL is planned but the work has not started yet.



The C++ source files for GNU APL are Doxygen documented. You can generate this documentation by running make DOXY in the top level directory of the GNU APL package. We have an info manual for GNU APL. We are also looking fordocumentation on APL in general (volunteers welcome) that can be published here. A "Quick start" document for APL is planned but the work has not started yet.The C++ source files for GNU APL are Doxygen documented. You can generate this documentation by runningin the top level directory of the GNU APL package.

GNU APL Community There is a growing group of people that are using GNU APL and that have made their own developments related to APL available to the public. We have created a links to those developments to avoid that they get lost.



In addition, we maintain a files that contain APL code sniplets, GNU APL workspaces, and other files that were contributed by the GNU APL Community. The Bits-and-Pieces directory is the right place for contributions for which the creation of an own hosting account would be an overkill. There is a growing group of people that are using GNU APL and that have made their own developments related to APL available to the public. We have created a GNU APL Community Web page that collectsto those developments to avoid that they get lost.In addition, we maintain a Bits-and-Pieces directory where we collectthat contain APL code sniplets, GNU APL workspaces, and other files that were contributed by the GNU APL Community. The Bits-and-Pieces directory is the right place for contributions for which the creation of an own hosting account would be an overkill.