Free APL Compilers and Interpreters

Compilers and Interpreters for the APL Programming Language

Free APL Interpreters and Compilers

APL is a high level, concise, array-oriented programming language that uses pictorial symbols for its language constructs rather than the usual ASCII-based words in other languages. It is sometimes used in statistics and scientific applications, among other things. (See, for example, the selection of books on APL on Amazon for the types of software APL is frequently used for.)

Related Pages

Free APL Compilers and Interpreters


GNU APL is an APL2 interpreter. It implements most of ISO/IEC 13751-2001 (Programming Language APL, Extended), including nested arrays and related functions, complex numbers, and shared variables. The program is written primarily for Unix-type systems, including Linux, and is shipped in source code form. If you use Windows, you can compile and run it under Cygwin.


ELI is an array programming language that has most of the features of APL with additional ones not present in the language. It uses ASCII text instead of the APL symbols (each APL symbol is mapped to ASCII characters that you can directly type on the keyboard). It is available for Windows, Mac OS X and Linux in the form of an interpreter as well as a compiler that translates your code to C (which you can then compile with a C compiler). At the time I reviewed this, there is no mention of the licence ("license" in US English) under which ELI is available, apart from the words "freely available" on the website.


NARS2000 (where NARS stands for Nested Arrays Research System) is an experimental APL interpreter used as a testbed for new ideas in the language. Besides being ISO/IEC 13751 Extended APL compliant, the interpreter also includes new functions, operators, data types, etc. The program runs on Windows as well as on Linux via Wine (see Free Windows Clones, Emulators and Emulation Layers for more information about Wine, if you don't know what it is). The code for the project is mostly licensed under the GNU General Public License, although some components are released under different licences.


J is a programming language in the APL language family. Unlike APL, it uses ASCII characters. It is useful in mathematical, statistical and logical analysis of arrays of data. The software comes with an IDE, standard libraries, utlities, a form designer, and supports an event-driven GUI for your application, integrated 2D and 3D graphics, memory mapped files, and interfacing with other programming languages. Supported systems include Windows, Linux, Mac OS X, SunOS, AIX, StrongArm PocketPC, and Mips PocketPC. You may use it free only if you are a student; otherwise you have to pay an annual fee (licence expires annually; see their site for the full licence).

APL Special Edition

APLSE is a freeware version of APL*Plus PC, a compiler for the APL programming language, a highly symbolic language (ie, it uses pictorial symbols rather than the traditional English words) and compact language.


According to its website, "A+ is a descendent of the language 'A'". Unlike APL, A+ is "geared" to business, supporting large capacity and high performance, with the "+" referring to the "electric graphical user interface". It is released under the GNU General Public License. Supported platforms include Linux, FreeBSD, AIX, IRIX, Mac OS X, NetBSD, Solaris, and Tru64.


This package, for Linux, FreeBSD, OpenBSD, Mac OS X, and POSIX/Unix-like systems, includes the APL font as well as the interpreter for APL11. You will have to compile it from the sources provided.


APLX is an APL development system for Windows, Mac OS, and Linux. It is no longer being maintained, but the final commercial version is now available for free download.


[Update: the Git repository previously linked to here seems to be now empty, and as such, I have delinked the site, since it doesn't seem to be available any more.] This is an APL written in JavaScript. (Actually, it is written in CoffeeScript, which compiles to JavaScript.) You can run it either in a web browser or in NodeJS. At the time I reviewed this, it implements a subset of APL (such as dfns, nested arrays, complex numbers, forks and hooks, strand assignment, index assignment, and user-defined operators).

Related Pages

Newest Pages

Popular Pages

How to Link to This Page

It will appear on your page as:

Free APL Compilers and Interpreters Free Webmaster Tutorials, Scripts and Articles Free How-To Guides Free Programmers, Webmasters and Security Resources
If you find this site useful, please link to us.