A Dictionary of APL

From APL Wiki
Revision as of 23:54, 28 January 2024 by Marshall (talk | contribs) (Quote Quad reference and tweaks)
Jump to navigation Jump to search


A Dictionary of APL is a 1987 paper by Ken Iverson that defines possible APL syntax and features. While allowances are made for "dialects" in comments, the paper primarily describes a simplified language similar to SHARP APL sometimes known as Dictionary APL. It introduces new primitives such as Nub Sieve, Nub In, Raze, Raze In, and functions for working with permutations, and aligns some functionality more closely with leading axis theory (however, the leading axis agreement that would later appear in J is not used). Much of this functionality was included in J's initial as described by the paper "APL\?"[1] or added in later versions, but has largely not been introduced to APL implementations, with the exception of Nub Sieve.

Another feature of the dictionary is its heavy use of terminology taken from English grammar, such as "noun" and "verb" rather than "array" and "function". This terminology was largely retained in J, where the initial definition and documentation was likewise named the "J Dictionary". K also uses the terms "noun", "verb", and "adverb" for grammar, but as its grammar is not determined by value types, these names exist alongside the term "function".

External links

References

APL dialects [edit]
Maintained APL+WinAPL2APL64APL\ivApletteAprilCo-dfnsDyalog APLDyalog APL Visiondzaima/APLGNU APLKapNARS2000PometoTinyAPL
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