Co-dfns: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
(Compilers category)
m (Version bump)
Line 6: Line 6:
| released                = 2014-10-07
| released                = 2014-10-07
| developer                = [[Aaron Hsu]]
| developer                = [[Aaron Hsu]]
| latest release version  = 2.0.0 / 2020-12-20
| latest release version  = 2.0.1 / 2021-01-22
| implementation languages = Co-dfns, [[Dyalog APL]]
| implementation languages = Co-dfns, [[Dyalog APL]]
| platforms                = CPU (compiles to [[wikipedia:C (programming language)|C]]), GPU (via [[wikipedia:ArrayFire|ArrayFire]])
| platforms                = CPU (compiles to [[wikipedia:C (programming language)|C]]), GPU (via [[wikipedia:ArrayFire|ArrayFire]])

Revision as of 14:52, 5 February 2021


Co-dfns is a compiler for a subset of Dyalog APL developed by Aaron Hsu, designed to target and run on GPUs. The implementation is notable for its use of vectors to represent trees. While the implementation is extremely terse and largly uncommented, the code is described in detail in Hsu's doctors thesis, wherein he also claims that the performance and maintainability of the compiler could not be achieved with any language other than APL.


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