Dzaima/APL: Difference between revisions

Jump to navigation Jump to search
144 bytes added ,  21:43, 10 September 2022
m
Text replacement - "<source" to "<syntaxhighlight"
mNo edit summary
m (Text replacement - "<source" to "<syntaxhighlight")
Line 21: Line 21:
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:
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:


* <source lang=apl inline>⍮</source> [[Pair]] (<source lang=apl inline>{⍺ ⍵}</source>)
* <syntaxhighlight lang=apl inline>⍮</source> [[Pair]] (<syntaxhighlight 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
* <syntaxhighlight lang=apl inline>⊇</source> [[Select]] (<syntaxhighlight lang=apl inline>⌷⍤0 99</source>) a.k.a. "sane indexing", i.e. select major cells
* <source lang=apl inline>⍛</source> [[Reverse Compose]] (<source lang=apl inline>{(⍺⍺ ⍺) ⍵⍵ ⍵}</source> — compare with <source lang=apl inline>∘</source> which is <source lang=apl inline>{⍺ ⍺⍺ (⍵⍵ ⍵)}</source>
* <syntaxhighlight lang=apl inline>⍛</source> [[Reverse Compose]] (<syntaxhighlight lang=apl inline>{(⍺⍺ ⍺) ⍵⍵ ⍵}</source> — compare with <syntaxhighlight lang=apl inline>∘</source> which is <syntaxhighlight lang=apl inline>{⍺ ⍺⍺ (⍵⍵ ⍵)}</source>


It also adds several unique additions from [[J]] and [[K]]:
It also adds several unique additions from [[J]] and [[K]]:


* <source lang=apl inline>⍡</source> Cumulative repeat (like <source lang=apl inline>⍣</source> but returns a list of iterations)
* <syntaxhighlight lang=apl inline>⍡</source> Cumulative repeat (like <syntaxhighlight lang=apl inline>⍣</source> but returns a list of iterations)
* <source lang=apl inline>⍁</source> For each diagonal (J's <source lang=apl inline>/.</source>)
* <syntaxhighlight lang=apl inline>⍁</source> For each diagonal (J's <syntaxhighlight lang=apl inline>/.</source>)
* <source lang=apl inline>ᐵ</source> and <source lang=apl inline>ᑈ</source> Each-left and Each-right (K's <source lang=apl inline>\:</source> and <source lang=apl inline>/:</source>)
* <syntaxhighlight lang=apl inline>ᐵ</source> and <syntaxhighlight lang=apl inline>ᑈ</source> Each-left and Each-right (K's <syntaxhighlight lang=apl inline>\:</source> and <syntaxhighlight lang=apl inline>/:</source>)


As of 2019, this is the only APL with a native dedicated Android app. This app wraps APL in an interface akin to that of graphic calculators.
As of 2019, this is the only APL with a native dedicated Android app. This app wraps APL in an interface akin to that of graphic calculators.

Navigation menu