SAX: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 13: | Line 13: | ||
| implementation language = [[wikipedia:C (programming language)|C]] | | implementation language = [[wikipedia:C (programming language)|C]] | ||
| license = Free for personal use / Proprietary commercial software | | license = Free for personal use / Proprietary commercial software | ||
| download = [https://github.com/abrudz/sax GitHub] | |||
| developer = [[Soliton Associates]] | | developer = [[Soliton Associates]] | ||
| influenced by = [[SHARP APL]] | | influenced by = [[SHARP APL]] |
Revision as of 18:42, 27 April 2022
SAX (SHARP APL for UNIX) was a version of SHARP APL offered by Soliton Associates. Notable features of SAX include function rank, the Rank operator, and leading axis theory, as well as relative comparison tolerance and close composition operators including Under.
Primitive functions
Arithmetic
Scalar
All scalar functions have rank zero.
Glyph | Monadic | Dyadic |
---|---|---|
+ |
Conjugate/Identity | Addition |
- |
Negate | Subtraction |
× |
Signum | Multiplication |
÷ |
Reciprocal | Division |
* |
Exponential | Power |
⍟ |
Natural Logarithm | Base-⍺ Logarithm |
| |
Magnitude | Residue |
! |
Factorial | Out-Of/Combinations |
⌊ |
Floor | Minimum |
⌈ |
Ceiling | Maximum |
○ |
Pi Times | Circle functions |
∧ |
And/Least Common Multiple (LCM) | |
∨ |
Or/Greatest Common Divisor (GCD) | |
⍲ |
Nand | |
⍱ |
Nor | |
~ |
Not | See Miscellaneous |
? |
Roll | See Non-scalar |
Non-scalar
Glyph | Rank | Monadic | Ranks | Dyadic |
---|---|---|---|---|
⌹ |
2 | Matrix inverse | ∞ 2 | Matrix divide |
? |
See Scalar | * * | Deal | |
⊤ |
∞ ∞ | Encode | ||
⊥ |
∞ ∞ | Decode |
Relational
Glyph | Rank | Monadic | Ranks | Dyadic |
---|---|---|---|---|
= |
See Miscellaneous | 0 0 | Equals | |
≠ |
See Miscellaneous | 0 0 | Not Equals | |
< |
See Structural | 0 0 | Less Than | |
≤ |
0 0 | Less Than or Equal | ||
≥ |
0 0 | Greater Than or Equal | ||
> |
See Structural | 0 0 | Greater Than | |
≡ |
∞ ∞ | Match | ||
∊ |
0 ∞ | Membership | ||
⍷ |
∞ ∞ | Find |
Indexing
Glyph | Rank | Monadic | Ranks | Dyadic |
---|---|---|---|---|
@ |
See Miscellaneous | 0 ∞ | From | |
⍳ |
1 | Count | 1 0 | Index Of |
⍸ |
∞ ∞ | Index | ||
⍋ |
∞ | Numeric Grade up | ∞ ∞ | Character Grade up |
⍒ |
∞ | Numeric Grade down | ∞ ∞ | Character Grade down |
Structural
Glyph | Rank | Monadic | Ranks | Dyadic |
---|---|---|---|---|
⍴ |
∞ | Shape of | 1 ∞ | Reshape |
↑ |
See Miscellaneous | 1 ∞ | Take | |
↓ |
∞ | Raze | 1 ∞ | Drop |
< |
∞ | Enclose/Box | See Relational | |
⊃ |
∞ | Conditional Enclose | ∞ ∞ | Link |
> |
0 | Disclose/Open | See Relational | |
, |
∞ | Ravel | ∞ ∞ | Catenate |
⍪ |
∞ | Table | ∞ ∞ | Catenate-Down |
⌽ |
1 | Reverse | 0 1 | Rotate |
⊖ |
∞ | Reverse-Down | ∞ ∞ | Rotate-Down |
⍉ |
∞ | Monadic Transpose | 0 ∞ | Dyadic Transpose |
Miscellaneous
Glyph | Rank | Monadic | Ranks | Dyadic |
---|---|---|---|---|
⊣ |
∞ | Stop | ∞ ∞ | Left |
⊢ |
∞ | Pass | ∞ ∞ | Right |
≠ |
∞ | Nubsieve | See Relational | |
↑ |
∞ | Nub | See Structural | |
= |
∞ | Nubin | See Relational | |
~ |
See Scalar | ∞ ∞ | Less | |
@ |
1 | All | See Indexing | |
⍕ |
∞ | Monadic Format | * ∞ | Dyadic Format |
⍎ |
* | Execute |
Primitive Operators
Glyph | Operands | Ranks | Monadic Call | Dyadic Call | ||
---|---|---|---|---|---|---|
/ |
f |
∞ |
Reduce | |||
⌿ |
f |
∞ |
Reduce-down | |||
\ |
f |
∞ |
Scan | |||
⍀ |
f |
∞ |
Scan-down | |||
/ |
m |
∞ |
Copy/Compress | |||
⌿ |
m |
∞ |
Copy-down/Compress-down | |||
\ |
m |
∞ |
Expand | |||
⍀ |
m |
∞ |
Expand-down | |||
⊂ |
f |
∞ |
rf lf |
Swap | ||
& |
f |
∞ |
∞ ∞ |
Select | ||
⍤ |
f |
g |
mg |
mg mg |
On (close Over) | |
⍤ |
f |
n |
n |
n n |
Rank | |
⍤ |
m |
g |
mg |
mg mg |
Cut | |
⍥ |
f |
g |
mg |
mg mg |
Upon (close Atop) | |
¨ |
f |
g |
mg |
mg mg |
Under | |
¨ |
m |
g |
mg |
With (Bind) | ||
¨ |
f |
n |
mf |
|||
. |
f |
g |
2 |
∞ ∞ |
Alternant | Inner-product |
. |
m |
g |
∞ ∞ |
Tie, Outer-product | ||
. |
f |
m |
mf |
Ply |
APL dialects [edit] | |
---|---|
Maintained | APL+Win ∙ APL2 ∙ APL64 ∙ APL\iv ∙ Aplette ∙ April ∙ Co-dfns ∙ Dyalog APL ∙ Dyalog APL Vision ∙ dzaima/APL ∙ GNU APL ∙ Kap ∙ NARS2000 ∙ Pometo ∙ TinyAPL |
Historical | A Programming Language ∙ A+ (A) ∙ APL# ∙ APL2C ∙ APL\360 ∙ APL/700 ∙ APL\1130 ∙ APL\3000 ∙ APL.68000 ∙ APL*PLUS ∙ APL.jl ∙ APL.SV ∙ APLX ∙ Extended Dyalog APL ∙ Iverson notation ∙ IVSYS/7090 ∙ NARS ∙ ngn/apl ∙ openAPL ∙ Operators and Functions ∙ PAT ∙ Rowan ∙ SAX ∙ SHARP APL ∙ Rationalized APL ∙ VisualAPL (APLNext) ∙ VS APL ∙ York APL |
Derivatives | AHPL ∙ BQN ∙ CoSy ∙ ELI ∙ Glee ∙ I ∙ Ivy ∙ J ∙ Jelly ∙ K (Goal, Klong, Q) ∙ KamilaLisp ∙ Lang5 ∙ Lil ∙ Nial ∙ RAD ∙ Uiua |
Overviews | Comparison of APL dialects ∙ Timeline of array languages ∙ Timeline of influential array languages ∙ Family tree of array languages |