macOS
brew install gnu-apllocal Homebrew formula metadata
sudo port install gnu-aplMacPorts ports tree · lang/gnu-apl/Portfile · source: api.github.com
brew
GNU implementation of the programming language APL. Version 1.9 via Homebrew; verified 2026-06-13.
install
brew install gnu-apllocal Homebrew formula metadata
sudo port install gnu-aplMacPorts ports tree · lang/gnu-apl/Portfile · source: api.github.com
sudo apk add gnu-aplAlpine Linux edge package indexes · gnu-apl · source: dl-cdn.alpinelinux.org
nix profile install nixpkgs#gtk-servernixpkgs package indexes · pkgs/by-name/gt/gtk-server/package.nix · source: api.github.com
overview
GNU implementation of the programming language APL
history
GNU APL is the GNU Project's free interpreter for APL, aimed at ISO/IEC 13751 Extended APL compatibility while adding practical Unix-style features such as scripting, shared variables, file I/O, SQL access, plotting, JSON handling, and GTK integration.
Juergen Sauermann announced GNU APL 1.0 on the GNU info list in September 2013 after several years of development, describing it as a GNU implementation of the ISO 13751 APL standard with nested arrays, complex numbers, and shared variables. The project kept its source on GNU Savannah and later shifted from occasional tarball releases to repository-based bug-fix distribution after the 1.9 release line.
The interpreter evolved as a large C++ codebase rather than a minimal language experiment. Its manual frames GNU APL as an APL interpreter plus GNU-specific extensions, and the home page points users to a quick tour, a reference manual, Doxygen-generated source documentation, and Savannah repositories for routine development use.
GNU APL serves the small but persistent APL community that wants a free software implementation available through GNU mirrors, source repositories, Debian packages, and ports for GNU/Linux, BSD, macOS, and Windows environments. The project also hosts a community page that collects contributed workspaces, libraries, editor modes, bindings, SQL interfaces, plotting tools, and ports.
Its ecosystem significance comes less from mass adoption and more from preservation: it gives package managers and free software distributions a maintained, source-available APL implementation with Unicode support and documented extensions.
Practitioners use GNU APL interactively from a terminal, as a script interpreter, and as a host for APL workspaces. Typical uses include exploring array-oriented algorithms, running old or portable APL code, writing compact data-processing scripts, testing ISO APL behavior, and using GNU APL's non-standard system functions for files, databases, graphics, JSON, and native integrations.
For package maintainers, GNU APL is notable because it packages a historically specialized language in the familiar GNU Autotools and Savannah ecosystem. It also carries practical platform concerns that package builders care about, including APL glyph fonts, keyboard mappings, terminal behavior, and optional integrations.
security posture
broad file, network, media, or database tool signal. generalized runtime or code generation signal.
yellow risk · medium confidence · runtime
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
AP100 | cli | global executable | |
AP210 | cli | global executable | |
APserver | cli | global executable | |
Gtk_server | cli | global executable | |
apl | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://www.gnu.org/software/apl/
install metadata
| Package key | brew:gnu-apl |
|---|---|
| Version | 1.9 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/gnu-apl |
| Homepage | https://www.gnu.org/software/apl/ |
| Repository | https://git.savannah.gnu.org/git/apl.git |
| Upstream docs | https://www.gnu.org/software/apl |
| License | GPL-3.0-or-later |
| Source archive | https://ftpmirror.gnu.org/gnu/apl/apl-1.9.tar.gz |
| Last updated | 2026-06-13T23:34:56+02:00 |
| Pulse | updated |
| Dependencies | at-spi2-core, cairo, gdk-pixbuf, gettext, glib, gtk+3, harfbuzz, libpng, libx11, libxcb, pango, pcre2, readline, sqlite |
| Build dependencies | pkgconf |
| Bottle | available (on arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, monterey, sonoma, ventura, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | gnu-apl |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
gnu-apl 1.9-r0
GNU interpreter for the programming language APL
https://www.gnu.org/software/apl/
sudo apk add gnu-aplgnu-apl-dev 1.9-r0
GNU interpreter for the programming language APL (development files)
https://www.gnu.org/software/apl/
sudo apk add gnu-apl-devgnu-apl-doc 1.9-r0
GNU interpreter for the programming language APL (documentation)
https://www.gnu.org/software/apl/
sudo apk add gnu-apl-docgnu-apl
sudo port install gnu-aplgtk-server
nix profile install nixpkgs#gtk-servergtk-server 2.4.6-r2
Interpreted GUI Programming for GTK
sudo apk add gtk-servergtk-server-doc 2.4.6-r2
Interpreted GUI Programming for GTK (documentation)
sudo apk add gtk-server-docsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.