ngn/apl

From APL Wiki
Revision as of 01:28, 8 February 2021 by Marshall (talk | contribs) (Text replacement - "Category:Compilers" to "Category:Bytecode compilers")
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

ngn/apl is an APL bytecode compiler and interpreter by Nick Nickolov. Because it is implemented in Javascript, it can be run in Node.js or any modern browser.

ngn/apl supports most of the core language of Dyalog APL 14.0,: dfns ({⍺ ⍵}), nested arrays, complex numbers (1j2), forks and atops, strand assignment ((a b)←c), indexed assignment (a[b]←c), and user-defined operators ({⍺⍺ ⍵⍵}), but does not support Key (), Rank (operator () tradfns (∇R←X f Y), non-zero index origin (⎕IO←1), comparison tolerance (⎕CT), prototypes (it always uses zero as fill), modified assignment (x+←1), keywords (:If), object-oriented programming, or namespaces. It extends Dyalog APL with infinities (¯ or ) and a few additoinal primitives.

On December 27, 2020, Nickolov announced that he would discard his implementation.[1] Soon after, Adám Brudzewsky took up the mantle of hosting the source and online demo.[2]

External link

References

  1. Nickolov, N. "ngn". Announcement. APL Orchard. Stack Exchange chat.
  2. Brudzewsky, A. "Adám". Announcement. APL Orchard. Stack Exchange chat.
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