From APL Wiki
Jump to navigation Jump to search

GNU APL is a free and (almost) complete implementation of Extended APL as specified in ISO/IEC 13751:2001 and is thus similar to APL2. It was initially written and is being maintained by Jürgen Sauermann. It includes extensions such as complex numbers and a shared variable interface.

GNU APL's online demo, try-GNU-APL

In addition to a normal local APL session, GNU APL can used in a "scripting" language fashion by processing linear scripts passed to the interpreter at startup. There is an experimental online version as well as the ability to be compiled into a shared loadable library for embedding the interpreter into other projects.

Documents on GNU APL sometimes quote Richard Stallman, who both founded GNU and programmed in APL. However, Stallman is not directly associated with the project.


GNU APL tends to prefer the Unicode Lozenge (U+25CA; ) and Element of (U+2208; ) over Diamond operator (U+22C4; ) and Small Element of (U+220A; ) which are more commonly used by other dialects. This can lead to SYNTAX ERRORs if attempting to use code written for GNU APL in other implementations. However, GNU APL also accepts the more common code points.

External links

APL dialects [edit]
Maintained APL+Win (APL*PLUS) ∙ APL2APL64APL\ivAprilCo-dfnsDyalog APLdzaima/APLExtended Dyalog APLGNU APLNARS2000ngn/apl
Historical Iverson notationA Programming LanguageA+ (A) ∙ APL#APL.68000APL.SVAPLXAPL\1130APL\3000APL\360APL/700NARSopenAPLRowanSAXSHARP APLVisualAPL (APLNext) ∙ VS APLYork APL
Derivatives AHPLAPL\ivBQNELIIIvyJJellyK (Q, KDB+) ∙ NialRAD