NARS2000: Difference between revisions
Miraheze>Marshall No edit summary |
Miraheze>Marshall |
||
Line 66: | Line 66: | ||
|- | |- | ||
| <source lang=apl inline>~</source> || [[Not]] || [[Without]] | | <source lang=apl inline>~</source> || [[Not]] || [[Without]] | ||
|} | |||
=== Operators === | |||
One feature of NARS2000 is its heavy use of experimental primitive operators. In the table below, operators which are unknown or obscure in the APL world are linked to the NARS2000 wiki rather than the APL wiki. | |||
{| class=wikitable | |||
! Glyph !! Valence !! Monadic call !! Dyadic call | |||
|- | |||
| <source lang=apl inline>⍣</source> || Dyadic ||colspan=2| [[Power operator|Power]] | |||
|- | |||
| <source lang=apl inline>⍨</source> || Monadic ||colspan=2| [[Commute]] | |||
|- | |||
| <source lang=apl inline>⍥</source> || Dyadic ||colspan=2| Composition ([[Over]]) | |||
|- | |||
| <source lang=apl inline>∘</source> || Dyadic ||colspan=2| [[Compose]] | |||
|- | |||
| <source lang=apl inline>⍤</source> || Dyadic ||colspan=2| [[Rank operator|Rank]] | |||
|- | |||
| <source lang=apl inline>‼</source> || Monadic || [http://wiki.nars2000.org/index.php/Combinatorial Combinatorial] || | |||
|- | |||
| <source lang=apl inline>⍡</source> || Dyadic || || [[Convolution]] | |||
|- | |||
| <source lang=apl inline>.</source> || Dyadic || [[Inner Product]] || [[Determinant]] | |||
|- | |||
| <source lang=apl inline>∂</source> || Monadic ||colspan=2| Numerical [http://wiki.nars2000.org/index.php/Derivative Derivative] | |||
|- | |||
| <source lang=apl inline>⌻</source> || Monadic ||colspan=2| [http://wiki.nars2000.org/index.php/Matrix Matrix] | |||
|- | |||
| <source lang=apl inline>⍦</source> || Monadic ||colspan=2| [http://wiki.nars2000.org/index.php/Multisets Multisets] | |||
|- | |||
| <source lang=apl inline>⊙</source> || Monadic ||colspan=2| [http://wiki.nars2000.org/index.php/Null Null] | |||
|- | |||
| <source lang=apl inline>a∘/</source> || Special || || [[Mask]] | |||
|- | |||
| <source lang=apl inline>a∘⌿</source> || Special || || [[Mask]] First | |||
|- | |||
| <source lang=apl inline>a∘\</source> || Special || || [[Mesh]] | |||
|- | |||
| <source lang=apl inline>a∘⍀</source> || Special || || [[Mesh]] First | |||
|- | |||
| <source lang=apl inline>⍠</source> || Dyadic ||colspan=2| [[Variant]] | |||
|} | |} | ||
Revision as of 15:09, 30 October 2019
NARS2000 is an open-source APL interpreter written by Bob Smith, a prominent APL developer and implementer from STSC in the 1970s and 1980s. NARS2000 contains advanced features and new Simple scalars and runs natively on Microsoft Windows, and other platforms under Wine. It is the spiritual successor of the first "NARS" (Nested Arrays Research System) which was designed and implemented in the early 1980s as a testbed for new ideas in APL, principally with nested arrays.
Language ideas include new functions, operators, datatypes, and many other extensiosn. The project is free open source software.
Primitives
The following list is incomplete.
Functions
Glyph | Monadic | Dyadic |
---|---|---|
⍸ |
Indices | Array Lookup (high-rank Index-Of) |
< |
Condense | Less Than |
> |
Dilate | Greater Than |
\ |
Expand | |
⍷ |
Find | |
⍳ |
Index Generator | Index Of |
⌹ |
Matrix Inverse | Matrix Divide |
≢ |
Tally | Mismatch |
⊂ |
Partitioned Enclose | |
π |
Factors | Primes |
⍴ |
Shape | Reshape |
√ |
Square Root | Root |
.. |
Sequence | |
⊆ |
Subset | |
⊇ |
Superset | |
§ |
Symmetric Difference | |
~ |
Not | Without |
Operators
One feature of NARS2000 is its heavy use of experimental primitive operators. In the table below, operators which are unknown or obscure in the APL world are linked to the NARS2000 wiki rather than the APL wiki.
Glyph | Valence | Monadic call | Dyadic call |
---|---|---|---|
⍣ |
Dyadic | Power | |
⍨ |
Monadic | Commute | |
⍥ |
Dyadic | Composition (Over) | |
∘ |
Dyadic | Compose | |
⍤ |
Dyadic | Rank | |
‼ |
Monadic | Combinatorial | |
⍡ |
Dyadic | Convolution | |
. |
Dyadic | Inner Product | Determinant |
∂ |
Monadic | Numerical Derivative | |
⌻ |
Monadic | Matrix | |
⍦ |
Monadic | Multisets | |
⊙ |
Monadic | Null | |
a∘/ |
Special | Mask | |
a∘⌿ |
Special | Mask First | |
a∘\ |
Special | Mesh | |
a∘⍀ |
Special | Mesh First | |
⍠ |
Dyadic | Variant |