GNU APL: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
m (Clarify a bit what is meant by "scripting" as a capability as well as mentioning libapl)
No edit summary
Line 22: Line 22:
'''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 number]]s and a shared variable interface.
'''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 number]]s and a shared variable interface.


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 compiled into a shared loadable library for embedding into other projects.
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.
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.

Revision as of 13:27, 10 June 2020

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.

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's online demo, try-GNU-APL

Encoding

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.


APL dialects [edit]
Maintained APL+WinAPL2APL64APL\ivApletteAprilCo-dfnsDyalog APLDyalog APL Visiondzaima/APLGNU APLKapNARS2000Pometo
Historical A Programming LanguageA+ (A) ∙ APL#APL2CAPL\360APL/700APL\1130APL\3000APL.68000APL*PLUSAPL.jlAPL.SVAPLXExtended Dyalog APLIverson notationIVSYS/7090NARSngn/aplopenAPLOperators and FunctionsPATRowanSAXSHARP APLRationalized APLVisualAPL (APLNext) ∙ VS APLYork APL
Derivatives AHPLBQNCoSyELIGleeIIvyJJellyK (Goal, Klong, Q) ∙ KamilaLispLang5LilNialRADUiua
Overviews Comparison of APL dialectsTimeline of array languagesTimeline of influential array languagesFamily tree of array languages