Difference between revisions of "Dzaima/APL"
Jump to navigation
Jump to search
m |
|||
Line 24: | Line 24: | ||
* <source lang=apl inline>⍮</source> [[Pair]] (<source lang=apl inline>{⍺ ⍵}</source>) | * <source lang=apl inline>⍮</source> [[Pair]] (<source lang=apl inline>{⍺ ⍵}</source>) | ||
* <source lang=apl inline>⊇</source> [[Select]] (<source lang=apl inline>⌷⍤0 99</source>) a.k.a. "sane indexing", i.e. select major cells | * <source lang=apl inline>⊇</source> [[Select]] (<source lang=apl inline>⌷⍤0 99</source>) a.k.a. "sane indexing", i.e. select major cells | ||
− | * <source lang=apl inline>⍛</source> [[Reverse Compose operator|Reverse Compose]] (<source lang=apl inline>{(⍺⍺ ⍺) ⍵⍵ ⍵}</source> — compare with <source lang=apl inline>∘</source> which is <source lang=apl inline>{⍺ ⍺⍺ (⍵⍵ ⍵)}</source> | + | * <source lang=apl inline>⍛</source> [[Reverse Compose (operator)|Reverse Compose]] (<source lang=apl inline>{(⍺⍺ ⍺) ⍵⍵ ⍵}</source> — compare with <source lang=apl inline>∘</source> which is <source lang=apl inline>{⍺ ⍺⍺ (⍵⍵ ⍵)}</source> |
It also adds several unique additions from [[J]] and [[K]]: | It also adds several unique additions from [[J]] and [[K]]: |
Revision as of 11:22, 24 March 2020
dzaima/APL is an implementation of APL in Java, created and maintained by Stack Exchange user dzaima. It is primarily based on Dyalog APL, but handles some parts of the language more strictly and includes additional primitive functions and operators while adding dictionaries as a native datatype. It also includes Processing integration.
dzaima/APL adds many new primitives and extensions to existing primitives, most taken from or inspired by Adám Brudzewsky's experimental Extended Dyalog APL, for example:
⍮
Pair ({⍺ ⍵}
)⊇
Select (⌷⍤0 99
) a.k.a. "sane indexing", i.e. select major cells⍛
Reverse Compose ({(⍺⍺ ⍺) ⍵⍵ ⍵}
— compare with∘
which is{⍺ ⍺⍺ (⍵⍵ ⍵)}
It also adds several unique additions from J and K:
⍡
Cumulative repeat (like⍣
but returns a list of iterations)⍁
For each diagonal (J's/.
)ᐵ
andᑈ
Each-left and Each-right (K's\:
and/:
)
As of 2019, dzaima/APL is the only APL with a native dedicated Android app. This app wraps APL in an interface akin to that of graphic calculators.
External Links
APL dialects [edit] | |
---|---|
Maintained | APL+Win (APL*PLUS) ∙ APL2 ∙ APL64 ∙ APL\iv ∙ Co-dfns ∙ Dyalog APL ∙ dzaima/APL ∙ GNU APL ∙ NARS2000 ∙ ngn/apl |
Historical | Iverson notation ∙ A Programming Language ∙ A+ (A) ∙ APL# ∙ APL.68000 ∙ APL.SV ∙ APLX ∙ APL\1130 ∙ APL\360 ∙ NARS ∙ openAPL ∙ Rowan ∙ SHARP APL (SAX) ∙ VisualAPL (APLNext) ∙ VSAPL ∙ York APL |
Derivatives | ELI ∙ J ∙ K (Q, KDB+) ∙ LYaPAS ∙ Nial ∙ RAD ∙ AHPL |