April (Array Programming Re-Imagined in Lisp) is a compiled APL implementation embedded in Common Lisp, with the primary goal of allowing array programming to be used for parts of a Lisp program. April code is written as a Lisp string, and can be evaluated as a program or called as a function. There are also facilities to pass data from Lisp and save and restore workspaces. April's functions and operators closely resemble those of Dyalog with Migration Level 1, and it also implements a small number of Dyalog's system variables and functions. File interaction and control structures are not included, as they are already present in Common Lisp.
- Andrew Sengul: April, an APL compiler for Common Lisp (video)
|APL dialects |
|Maintained||APL+Win (APL*PLUS) ∙ APL2 ∙ APL64 ∙ APL\iv ∙ April ∙ Co-dfns ∙ Dyalog APL ∙ dzaima/APL ∙ Extended Dyalog APL ∙ GNU APL ∙ KAP ∙ NARS2000|
|Historical||Iverson notation ∙ A Programming Language ∙ A+ (A) ∙ APL# ∙ APL.68000 ∙ APL.SV ∙ APLX ∙ APL\1130 ∙ APL\3000 ∙ APL\360 ∙ APL/700 ∙ NARS ∙ ngn/apl ∙ openAPL ∙ Rowan ∙ SAX ∙ SHARP APL∙ VisualAPL (APLNext) ∙ VS APL ∙ York APL|
|Derivatives||AHPL ∙ BQN ∙ ELI ∙ I ∙ Ivy ∙ J ∙ Jelly ∙ K (Q, KDB+) ∙ Nial ∙ RAD|