SHARP APL: Difference between revisions

Jump to navigation Jump to search
2,494 bytes added ,  22:29, 10 September 2022
m
Text replacement - "<source" to "<syntaxhighlight"
(→‎External links: Remove Wikipedia IPSA link as it's mostly not about APL and not all that helpful)
m (Text replacement - "<source" to "<syntaxhighlight")
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Infobox array language
{{Infobox array language
| logo                    = [[File:Sharp APL logo.png]]
| array model              = [[Flat array model|flat]] with [[Box|boxes]]
| array model              = [[Flat array model|flat]] with [[Box|boxes]]
| index origin            = 0 or 1
| index origin            = 0 or 1
Line 5: Line 6:
| numeric types            = [[complex]] floats
| numeric types            = [[complex]] floats
| unicode support          = none
| unicode support          = none
| released                = 1978<ref>[[Eric Iverson]]. "The Integration of APL into the Larger World of Data Processing" at [[IPSA '80]].</ref>
| released                = 1976 via [[time-sharing]]; around 1979 as a product
| withdrawn                = around 1993
| withdrawn                = around 1993
| latest release          = 002.140 / 1988
| latest release          = 002.140 / 1988
Line 13: Line 14:
| developer                = [[I.P. Sharp Associates]]
| developer                = [[I.P. Sharp Associates]]
| influenced by            = [[APL\360]]
| influenced by            = [[APL\360]]
| influenced              = [[SAX]], [[J]], [[A+]], [[K]]
| influenced              = [[SAX]], [[J]], [[A+]], [[K]], [[Dyalog APL]], [[SHARP APL/HP]]
| file ext                = .saw, .saf, .sam
| file ext                = .saw, .saf, .sam
| download                = [http://www.sigapl.org/Archives/waterloo_archive/apl/sharp.apl/index.html SIGAPL]
| download                = [http://www.sigapl.org/Archives/waterloo_archive/apl/sharp.apl/index.html SIGAPL]
}}
}}
[[File:Old SHARP APL.png|thumb|right|SHARP APL running under DOSBox]]
[[File:Old SHARP APL.png|thumb|right|SHARP APL running under DOSBox]]
'''SHARP APL''' was a standalone version of APL offered by [[I.P. Sharp Associates]] (IPSA), who had previously offered APL interpretation as a timesharing service. IPSA employed many notable APL designers including [[Ken Iverson]], and SHARP APL was the source of many developments in [[flat array theory]].
'''SHARP APL''' was an APL implementation offered by [[I.P. Sharp Associates]] (IPSA), originally as part of its [[time-sharing]] service and later as a stand-alone product. It was split off from [[STSC]]'s [[APL*PLUS]], which until then had been sold jointly by the two companies. SHARP APL was the source of many developments in [[flat array theory]], driven by [[Ken Iverson]] and other APL designers at IPSA.
 
== Primitive functions ==
== Primitive functions ==


Line 30: Line 32:
! Glyph                              !! Monadic                !! Dyadic
! Glyph                              !! Monadic                !! Dyadic
|-
|-
| <source lang=apl inline>+</source> || [[Conjugate]]/Identity || [[Addition]]
| <syntaxhighlight lang=apl inline>+</syntaxhighlight> || [[Conjugate]]/Identity || [[Addition]]
|-
|-
| <source lang=apl inline>-</source> || [[Negate]]            || [[Subtraction]]
| <syntaxhighlight lang=apl inline>-</syntaxhighlight> || [[Negate]]            || [[Subtraction]]
|-
|-
| <source lang=apl inline>×</source> || [[Signum]]            || [[Multiplication]]
| <syntaxhighlight lang=apl inline>×</syntaxhighlight> || [[Signum]]            || [[Multiplication]]
|-
|-
| <source lang=apl inline>÷</source> || [[Reciprocal]]        || [[Division]]
| <syntaxhighlight lang=apl inline>÷</syntaxhighlight> || [[Reciprocal]]        || [[Division]]
|-
|-
| <source lang=apl inline>*</source> || [[Exponential]]        || [[Power function|Power]]
| <syntaxhighlight lang=apl inline>*</syntaxhighlight> || [[Exponential]]        || [[Power function|Power]]
|-
|-
| <source lang=apl inline>⍟</source> || [[Natural Logarithm]]  || [[Logarithm|Base-⍺ Logarithm]]
| <syntaxhighlight lang=apl inline>⍟</syntaxhighlight> || [[Natural Logarithm]]  || [[Logarithm|Base-⍺ Logarithm]]
|-
|-
| <source lang=apl inline>|</source> || [[Magnitude]]          || [[Residue]]
| <syntaxhighlight lang=apl inline>|</syntaxhighlight> || [[Magnitude]]          || [[Residue]]
|-
|-
| <source lang=apl inline>!</source> || [[Factorial]]          || Out-Of/[[Combinations]]
| <syntaxhighlight lang=apl inline>!</syntaxhighlight> || [[Factorial]]          || Out-Of/[[Combinations]]
|-
|-
| <source lang=apl inline>⌊</source> || [[Floor]]              || [[Minimum]]
| <syntaxhighlight lang=apl inline>⌊</syntaxhighlight> || [[Floor]]              || [[Minimum]]
|-
|-
| <source lang=apl inline>⌈</source> || [[Ceiling]]            || [[Maximum]]
| <syntaxhighlight lang=apl inline>⌈</syntaxhighlight> || [[Ceiling]]            || [[Maximum]]
|-
|-
| <source lang=apl inline>○</source> || [[Pi Times]]          || [[Circle functions]]
| <syntaxhighlight lang=apl inline>○</syntaxhighlight> || [[Pi Times]]          || [[Circle functions]]
|-
|-
| <source lang=apl inline>∧</source> ||                        || [[And]]/Least Common Multiple (LCM)
| <syntaxhighlight lang=apl inline>∧</syntaxhighlight> ||                        || [[And]]/Least Common Multiple (LCM)
|-
|-
| <source lang=apl inline>∨</source> ||                        || [[Or]]/Greatest Common Divisor (GCD)
| <syntaxhighlight lang=apl inline>∨</syntaxhighlight> ||                        || [[Or]]/Greatest Common Divisor (GCD)
|-
|-
| <source lang=apl inline>⍲</source> ||                        || [[Nand]]
| <syntaxhighlight lang=apl inline>⍲</syntaxhighlight> ||                        || [[Nand]]
|-
|-
| <source lang=apl inline>⍱</source> ||                        || [[Nor]]
| <syntaxhighlight lang=apl inline>⍱</syntaxhighlight> ||                        || [[Nor]]
|-
|-
| <source lang=apl inline>~</source> || [[Not]]                || See [[#Miscellaneous|Miscellaneous]]
| <syntaxhighlight lang=apl inline>~</syntaxhighlight> || [[Not]]                || See [[#Miscellaneous|Miscellaneous]]
|-
|-
| <source lang=apl inline>?</source> || [[Roll]]              || See [[#Non-Scalar|Non-scalar]]
| <syntaxhighlight lang=apl inline>?</syntaxhighlight> || [[Roll]]              || See [[#Non-Scalar|Non-scalar]]
|}
|}


Line 70: Line 72:
! Glyph                          !! Rank !! Monadic              !! Ranks !! Dyadic
! Glyph                          !! Rank !! Monadic              !! Ranks !! Dyadic
|-
|-
| <source lang=apl inline>⌹</source> || 2 || [[Matrix inverse]]    || ∞ 2 || [[Matrix divide]]
| <syntaxhighlight lang=apl inline>⌹</syntaxhighlight> || 2 || [[Matrix inverse]]    || ∞ 2 || [[Matrix divide]]
|-
|-
| <source lang=apl inline>?</source> ||  || See [[#Scalar|Scalar]] || * * || [[Deal]]
| <syntaxhighlight lang=apl inline>?</syntaxhighlight> ||  || See [[#Scalar|Scalar]] || * * || [[Deal]]
|-
|-
| <source lang=apl inline>⊤</source> ||  ||                        || ∞ ∞ || [[Encode]]
| <syntaxhighlight lang=apl inline>⊤</syntaxhighlight> ||  ||                        || ∞ ∞ || [[Encode]]
|-
|-
| <source lang=apl inline>⊥</source> ||  ||                        || ∞ ∞ || [[Decode]]
| <syntaxhighlight lang=apl inline>⊥</syntaxhighlight> ||  ||                        || ∞ ∞ || [[Decode]]
|}
|}


Line 84: Line 86:
! Glyph                          !! Rank !! Monadic                            !! Ranks !! Dyadic
! Glyph                          !! Rank !! Monadic                            !! Ranks !! Dyadic
|-
|-
| <source lang=apl inline>=</source> ||  || See [[#Miscellaneous|Miscellaneous]] || 0 0 || [[Equals]]
| <syntaxhighlight lang=apl inline>=</syntaxhighlight> ||  || See [[#Miscellaneous|Miscellaneous]] || 0 0 || [[Equals]]
|-
|-
| <source lang=apl inline>≠</source> ||  || See [[#Miscellaneous|Miscellaneous]] || 0 0 || [[Not Equals]]
| <syntaxhighlight lang=apl inline>≠</syntaxhighlight> ||  || See [[#Miscellaneous|Miscellaneous]] || 0 0 || [[Not Equals]]
|-
|-
| <source lang=apl inline><</source> ||  || See [[#Structural|Structural]]      || 0 0 || [[Less Than]]
| <syntaxhighlight lang=apl inline><</syntaxhighlight> ||  || See [[#Structural|Structural]]      || 0 0 || [[Less Than]]
|-
|-
| <source lang=apl inline>≤</source> ||  ||                                      || 0 0 || [[Less Than or Equal]]
| <syntaxhighlight lang=apl inline>≤</syntaxhighlight> ||  ||                                      || 0 0 || [[Less Than or Equal]]
|-
|-
| <source lang=apl inline>≥</source> ||  ||                                      || 0 0 || [[Greater Than or Equal]]
| <syntaxhighlight lang=apl inline>≥</syntaxhighlight> ||  ||                                      || 0 0 || [[Greater Than or Equal]]
|-
|-
| <source lang=apl inline>></source> ||  || See [[#Structural|Structural]]      || 0 0 || [[Greater Than]]
| <syntaxhighlight lang=apl inline>></syntaxhighlight> ||  || See [[#Structural|Structural]]      || 0 0 || [[Greater Than]]
|-
|-
| <source lang=apl inline>≡</source> ||  ||                                      || ∞ ∞ || [[Match]]
| <syntaxhighlight lang=apl inline>≡</syntaxhighlight> ||  ||                                      || ∞ ∞ || [[Match]]
|-
|-
| <source lang=apl inline>∊</source> ||  ||                                      || 0 ∞ || [[Membership]]
| <syntaxhighlight lang=apl inline>∊</syntaxhighlight> ||  ||                                      || 0 ∞ || [[Membership]]
|-
|-
| <source lang=apl inline>⍷</source> ||  ||                                      || ∞ ∞ || [[Find]]
| <syntaxhighlight lang=apl inline>⍷</syntaxhighlight> ||  ||                                      || ∞ ∞ || [[Find]]
|}
|}


Line 108: Line 110:
! Glyph                          !! Rank !! Monadic                            !! Ranks !! Dyadic
! Glyph                          !! Rank !! Monadic                            !! Ranks !! Dyadic
|-
|-
| <source lang=apl inline>@</source> ||  || See [[#Miscellaneous|Miscellaneous]] || 0 ∞ || [[Squad Index|From]]
| <syntaxhighlight lang=apl inline>@</syntaxhighlight> ||  || See [[#Miscellaneous|Miscellaneous]] || 0 ∞ || [[Squad Index|From]]
|-
|-
| <source lang=apl inline>⍳</source> || 1 || [[Index Generator|Count]]            || 1 0 || [[Index Of]]
| <syntaxhighlight lang=apl inline>⍳</syntaxhighlight> || 1 || [[Index Generator|Count]]            || 1 0 || [[Index Of]]
|-
|-
| <source lang=apl inline>⍸</source> ||  ||                                      || ∞ ∞ || [[Indices of Match|Index]]
| <syntaxhighlight lang=apl inline>⍸</syntaxhighlight> ||  ||                                      || ∞ ∞ || [[Indices of Match|Index]]
|-
|-
| <source lang=apl inline>⍋</source> || ∞ || Numeric [[Grade up]]                || ∞ ∞ || Character [[Grade up]]
| <syntaxhighlight lang=apl inline>⍋</syntaxhighlight> || ∞ || Numeric [[Grade up]]                || ∞ ∞ || Character [[Grade up]]
|-
|-
| <source lang=apl inline>⍒</source> || ∞ || Numeric [[Grade down]]              || ∞ ∞ || Character [[Grade down]]
| <syntaxhighlight lang=apl inline>⍒</syntaxhighlight> || ∞ || Numeric [[Grade down]]              || ∞ ∞ || Character [[Grade down]]
|}
|}


Line 124: Line 126:
! Glyph                          !! Rank !! Monadic                                !! Ranks !! Dyadic
! Glyph                          !! Rank !! Monadic                                !! Ranks !! Dyadic
|-
|-
| <source lang=apl inline>⍴</source> || ∞ || [[Shape|Shape of]]                        || 1 ∞ || [[Reshape]]
| <syntaxhighlight lang=apl inline>⍴</syntaxhighlight> || ∞ || [[Shape|Shape of]]                        || 1 ∞ || [[Reshape]]
|-
|-
| <source lang=apl inline>↑</source> ||  || See [[#Miscellaneous|Miscellaneous]]      || 1 ∞ || [[Take]]
| <syntaxhighlight lang=apl inline>↑</syntaxhighlight> ||  || See [[#Miscellaneous|Miscellaneous]]      || 1 ∞ || [[Take]]
|-
|-
| <source lang=apl inline>↓</source> || ∞ || [[Raze]]                                  || 1 ∞ || [[Drop]]
| <syntaxhighlight lang=apl inline>↓</syntaxhighlight> || ∞ || [[Raze]]                                  || 1 ∞ || [[Drop]]
|-
|-
| <source lang=apl inline><</source> || ∞ || [[Enclose]]/Box                          ||    || See [[#Relational|Relational]]
| <syntaxhighlight lang=apl inline><</syntaxhighlight> || ∞ || [[Enclose]]/Box                          ||    || See [[#Relational|Relational]]
|-
|-
| <source lang=apl inline>⊃</source> || ∞ || [[Enclose if simple|Conditional Enclose]] || ∞ ∞ || [[Link]]
| <syntaxhighlight lang=apl inline>⊃</syntaxhighlight> || ∞ || [[Enclose if simple|Conditional Enclose]] || ∞ ∞ || [[Link]]
|-
|-
| <source lang=apl inline>></source> || 0 || [[Disclose]]/Open                        ||    || See [[#Relational|Relational]]
| <syntaxhighlight lang=apl inline>></syntaxhighlight> || 0 || [[Disclose]]/Open                        ||    || See [[#Relational|Relational]]
|-
|-
| <source lang=apl inline>,</source> || ∞ || [[Ravel]]                                || ∞ ∞ || [[Catenate]]
| <syntaxhighlight lang=apl inline>,</syntaxhighlight> || ∞ || [[Ravel]]                                || ∞ ∞ || [[Catenate]]
|-
|-
| <source lang=apl inline>⍪</source> || ∞ || [[Table]]                                || ∞ ∞ || [[Catenate First|Catenate-Down]]
| <syntaxhighlight lang=apl inline>⍪</syntaxhighlight> || ∞ || [[Table]]                                || ∞ ∞ || [[Catenate First|Catenate-Down]]
|-
|-
| <source lang=apl inline>⌽</source> || 1 || [[Reverse]]                              || 0 1 || [[Rotate]]
| <syntaxhighlight lang=apl inline>⌽</syntaxhighlight> || 1 || [[Reverse]]                              || 0 1 || [[Rotate]]
|-
|-
| <source lang=apl inline>⊖</source> || ∞ || [[Reverse First|Reverse-Down]]            || ∞ ∞ || [[Rotate First|Rotate-Down]]
| <syntaxhighlight lang=apl inline>⊖</syntaxhighlight> || ∞ || [[Reverse First|Reverse-Down]]            || ∞ ∞ || [[Rotate First|Rotate-Down]]
|-
|-
| <source lang=apl inline>⍉</source> || ∞ || Monadic [[Transpose]]                    || 0 ∞ || Dyadic [[Transpose]]
| <syntaxhighlight lang=apl inline>⍉</syntaxhighlight> || ∞ || Monadic [[Transpose]]                    || 0 ∞ || Dyadic [[Transpose]]
|}
|}


Line 152: Line 154:
! Glyph                          !! Rank !! Monadic                !! Ranks !! Dyadic
! Glyph                          !! Rank !! Monadic                !! Ranks !! Dyadic
|-
|-
| <source lang=apl inline>⊣</source> || ∞ || [[Stop]]                  || ∞ ∞ || [[Left Identity|Left]]
| <syntaxhighlight lang=apl inline>⊣</syntaxhighlight> || ∞ || [[Stop]]                  || ∞ ∞ || [[Left Identity|Left]]
|-
|-
| <source lang=apl inline>⊢</source> || ∞ || [[Identity|Pass]]        || ∞ ∞ || [[Right Identity|Right]]
| <syntaxhighlight lang=apl inline>⊢</syntaxhighlight> || ∞ || [[Identity|Pass]]        || ∞ ∞ || [[Right Identity|Right]]
|-
|-
| <source lang=apl inline>≠</source> || ∞ || [[Nubsieve]]              ||    || See [[#Relational|Relational]]
| <syntaxhighlight lang=apl inline>≠</syntaxhighlight> || ∞ || [[Nubsieve]]              ||    || See [[#Relational|Relational]]
|-
|-
| <source lang=apl inline>↑</source> || ∞ || [[Nub]]                  ||    || See [[#Structural|Structural]]
| <syntaxhighlight lang=apl inline>↑</syntaxhighlight> || ∞ || [[Nub]]                  ||    || See [[#Structural|Structural]]
|-
|-
| <source lang=apl inline>=</source> || ∞ || [[Nubin]]                ||    || See [[#Relational|Relational]]
| <syntaxhighlight lang=apl inline>=</syntaxhighlight> || ∞ || [[Nubin]]                ||    || See [[#Relational|Relational]]
|-
|-
| <source lang=apl inline>~</source> ||  || See [[#Scalar|Scalar]]    || ∞ ∞ || [[Without|Less]]
| <syntaxhighlight lang=apl inline>~</syntaxhighlight> ||  || See [[#Scalar|Scalar]]    || ∞ ∞ || [[Without|Less]]
|-
|-
| <source lang=apl inline>@</source> || 1 || [[Cartesian Product|All]] ||    || See [[#Indexing|Indexing]]
| <syntaxhighlight lang=apl inline>@</syntaxhighlight> || 1 || [[Cartesian Product|All]] ||    || See [[#Indexing|Indexing]]
|-
|-
| <source lang=apl inline>⍕</source> || ∞ || [[Monadic Format]]        || * ∞ || [[Dyadic Format]]
| <syntaxhighlight lang=apl inline>⍕</syntaxhighlight> || ∞ || [[Monadic Format]]        || * ∞ || [[Dyadic Format]]
|-
|-
| <source lang=apl inline>⍎</source> || * || [[Execute]]              ||    ||
| <syntaxhighlight lang=apl inline>⍎</syntaxhighlight> || * || [[Execute]]              ||    ||
|}
|}


Line 176: Line 178:
! Glyph !!colspan=2|Operands !!colspan=2|Ranks !! Monadic Call  !! Dyadic Call
! Glyph !!colspan=2|Operands !!colspan=2|Ranks !! Monadic Call  !! Dyadic Call
|-
|-
| <source lang=apl inline>/</source> ||                                    || <source lang=apl inline>f</source> || <source lang=apl inline>∞</source>  ||                                        || [[Reduce]]                      ||
| <syntaxhighlight lang=apl inline>/</syntaxhighlight> ||                                    || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>∞</syntaxhighlight>  ||                                        || [[Reduce]]                      ||
|-
|-
| <source lang=apl inline>⌿</source> ||                                    || <source lang=apl inline>f</source> || <source lang=apl inline>∞</source>  ||                                        || [[Reduce First|Reduce-down]]    ||
| <syntaxhighlight lang=apl inline>⌿</syntaxhighlight> ||                                    || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>∞</syntaxhighlight>  ||                                        || [[Reduce First|Reduce-down]]    ||
|-
|-
| <source lang=apl inline>\</source> ||                                    || <source lang=apl inline>f</source> || <source lang=apl inline>∞</source>  ||                                        || [[Scan]]                        ||
| <syntaxhighlight lang=apl inline>\</syntaxhighlight> ||                                    || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>∞</syntaxhighlight>  ||                                        || [[Scan]]                        ||
|-
|-
| <source lang=apl inline>⍀</source> ||                                    || <source lang=apl inline>f</source> || <source lang=apl inline>∞</source>  ||                                        || [[Scan First|Scan-down]]        ||
| <syntaxhighlight lang=apl inline>⍀</syntaxhighlight> ||                                    || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>∞</syntaxhighlight>  ||                                        || [[Scan First|Scan-down]]        ||
|-
|-
| <source lang=apl inline>/</source> ||                                    || <source lang=apl inline>m</source> || <source lang=apl inline>∞</source>  ||                                        || [[Replicate|Copy]]/[[Compress]] ||
| <syntaxhighlight lang=apl inline>/</syntaxhighlight> ||                                    || <syntaxhighlight lang=apl inline>m</syntaxhighlight> || <syntaxhighlight lang=apl inline>∞</syntaxhighlight>  ||                                        || [[Replicate|Copy]]/[[Compress]] ||
|-
|-
| <source lang=apl inline>⌿</source> ||                                    || <source lang=apl inline>m</source> || <source lang=apl inline>∞</source>  ||                                        || [[Replicate|Copy]]-down/[[Compress]]-down ||
| <syntaxhighlight lang=apl inline>⌿</syntaxhighlight> ||                                    || <syntaxhighlight lang=apl inline>m</syntaxhighlight> || <syntaxhighlight lang=apl inline>∞</syntaxhighlight>  ||                                        || [[Replicate|Copy]]-down/[[Compress]]-down ||
|-
|-
| <source lang=apl inline>\</source> ||                                    || <source lang=apl inline>m</source> || <source lang=apl inline>∞</source>  ||                                        || [[Expand]]                      ||
| <syntaxhighlight lang=apl inline>\</syntaxhighlight> ||                                    || <syntaxhighlight lang=apl inline>m</syntaxhighlight> || <syntaxhighlight lang=apl inline>∞</syntaxhighlight>  ||                                        || [[Expand]]                      ||
|-
|-
| <source lang=apl inline>⍀</source> ||                                    || <source lang=apl inline>m</source> || <source lang=apl inline>∞</source>  ||                                        || [[Expand First|Expand-down]]    ||
| <syntaxhighlight lang=apl inline>⍀</syntaxhighlight> ||                                    || <syntaxhighlight lang=apl inline>m</syntaxhighlight> || <syntaxhighlight lang=apl inline>∞</syntaxhighlight>  ||                                        || [[Expand First|Expand-down]]    ||
|-
|-
| <source lang=apl inline>⊂</source> ||                                    || <source lang=apl inline>f</source> || <source lang=apl inline>∞</source>  || <source lang=apl inline>rf lf</source> ||colspan=2| Swap
| <syntaxhighlight lang=apl inline>⊂</syntaxhighlight> ||                                    || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>∞</syntaxhighlight>  || <syntaxhighlight lang=apl inline>rf lf</syntaxhighlight> ||colspan=2| Swap
|-
|-
| <source lang=apl inline>&</source> ||                                    || <source lang=apl inline>f</source> || <source lang=apl inline>∞</source>  || <source lang=apl inline>∞  ∞</source>  ||colspan=2| Select
| <syntaxhighlight lang=apl inline>&</syntaxhighlight> ||                                    || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>∞</syntaxhighlight>  || <syntaxhighlight lang=apl inline>∞  ∞</syntaxhighlight>  ||colspan=2| Select
|-
|-
| <source lang=apl inline>⍤</source> || <source lang=apl inline>f</source> || <source lang=apl inline>g</source> || <source lang=apl inline>mg</source> || <source lang=apl inline>mg mg</source> ||colspan=2| On ([[close Over]])
| <syntaxhighlight lang=apl inline>⍤</syntaxhighlight> || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>g</syntaxhighlight> || <syntaxhighlight lang=apl inline>mg</syntaxhighlight> || <syntaxhighlight lang=apl inline>mg mg</syntaxhighlight> ||colspan=2| On ([[close Over]])
|-
|-
| <source lang=apl inline>⍤</source> || <source lang=apl inline>f</source> || <source lang=apl inline>n</source> || <source lang=apl inline>n</source>  || <source lang=apl inline>n  n</source>  ||colspan=2| [[Rank operator|Rank]]
| <syntaxhighlight lang=apl inline>⍤</syntaxhighlight> || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>n</syntaxhighlight> || <syntaxhighlight lang=apl inline>n</syntaxhighlight>  || <syntaxhighlight lang=apl inline>n  n</syntaxhighlight>  ||colspan=2| [[Rank operator|Rank]]
|-
|-
| <source lang=apl inline>⍤</source> || <source lang=apl inline>m</source> || <source lang=apl inline>g</source> || <source lang=apl inline>mg</source> || <source lang=apl inline>mg mg</source> ||colspan=2| [[Cut operator|Cut]]
| <syntaxhighlight lang=apl inline>⍤</syntaxhighlight> || <syntaxhighlight lang=apl inline>m</syntaxhighlight> || <syntaxhighlight lang=apl inline>g</syntaxhighlight> || <syntaxhighlight lang=apl inline>mg</syntaxhighlight> || <syntaxhighlight lang=apl inline>mg mg</syntaxhighlight> ||colspan=2| [[Cut operator|Cut]]
|-
|-
| <source lang=apl inline>⍥</source> || <source lang=apl inline>f</source> || <source lang=apl inline>g</source> || <source lang=apl inline>mg</source> || <source lang=apl inline>mg mg</source> ||colspan=2| Upon ([[close Atop]])
| <syntaxhighlight lang=apl inline>⍥</syntaxhighlight> || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>g</syntaxhighlight> || <syntaxhighlight lang=apl inline>mg</syntaxhighlight> || <syntaxhighlight lang=apl inline>mg mg</syntaxhighlight> ||colspan=2| Upon ([[close Atop]])
|-
|-
| <source lang=apl inline>¨</source> || <source lang=apl inline>f</source> || <source lang=apl inline>g</source> || <source lang=apl inline>mg</source> || <source lang=apl inline>mg mg</source> ||colspan=2| [[close Under|Under]]
| <syntaxhighlight lang=apl inline>¨</syntaxhighlight> || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>g</syntaxhighlight> || <syntaxhighlight lang=apl inline>mg</syntaxhighlight> || <syntaxhighlight lang=apl inline>mg mg</syntaxhighlight> ||colspan=2| [[close Under|Under]]
|-
|-
| <source lang=apl inline>¨</source> || <source lang=apl inline>m</source> || <source lang=apl inline>g</source> || <source lang=apl inline>mg</source> ||                                        ||rowspan="2"|With ([[Bind]])    ||
| <syntaxhighlight lang=apl inline>¨</syntaxhighlight> || <syntaxhighlight lang=apl inline>m</syntaxhighlight> || <syntaxhighlight lang=apl inline>g</syntaxhighlight> || <syntaxhighlight lang=apl inline>mg</syntaxhighlight> ||                                        ||rowspan="2"|With ([[Bind]])    ||
|-
|-
| <source lang=apl inline>¨</source> || <source lang=apl inline>f</source> || <source lang=apl inline>n</source> || <source lang=apl inline>mf</source> ||                                        ||
| <syntaxhighlight lang=apl inline>¨</syntaxhighlight> || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>n</syntaxhighlight> || <syntaxhighlight lang=apl inline>mf</syntaxhighlight> ||                                        ||
|-
|-
| <source lang=apl inline>.</source> || <source lang=apl inline>f</source> || <source lang=apl inline>g</source> || <source lang=apl inline>2</source>  || <source lang=apl inline>∞  ∞</source>  || [[Alternant]]                  || [[Inner Product|Inner-product]]
| <syntaxhighlight lang=apl inline>.</syntaxhighlight> || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>g</syntaxhighlight> || <syntaxhighlight lang=apl inline>2</syntaxhighlight>  || <syntaxhighlight lang=apl inline>∞  ∞</syntaxhighlight>  || [[Alternant]]                  || [[Inner Product|Inner-product]]
|-
|-
| <source lang=apl inline>.</source> || <source lang=apl inline>m</source> || <source lang=apl inline>g</source> ||                                    || <source lang=apl inline>∞  ∞</source>  ||                                || [[Tie]], [[Outer Product|Outer-product]]
| <syntaxhighlight lang=apl inline>.</syntaxhighlight> || <syntaxhighlight lang=apl inline>m</syntaxhighlight> || <syntaxhighlight lang=apl inline>g</syntaxhighlight> ||                                    || <syntaxhighlight lang=apl inline>∞  ∞</syntaxhighlight>  ||                                || [[Tie]], [[Outer Product|Outer-product]]
|-
|-
| <source lang=apl inline>.</source> || <source lang=apl inline>f</source> || <source lang=apl inline>m</source> || <source lang=apl inline>mf</source> ||                                        || [[Ply]]                        ||
| <syntaxhighlight lang=apl inline>.</syntaxhighlight> || <syntaxhighlight lang=apl inline>f</syntaxhighlight> || <syntaxhighlight lang=apl inline>m</syntaxhighlight> || <syntaxhighlight lang=apl inline>mf</syntaxhighlight> ||                                        || [[Ply]]                        ||
|}
|}


Line 329: Line 331:
| 48 || 1983-11-30 ||  ||            || John D. Burger      || Workspace 1 HCPRINT
| 48 || 1983-11-30 ||  ||            || John D. Burger      || Workspace 1 HCPRINT
|}
|}
== References ==
<references/>


{{APL dialects}}[[Category:APL dialects]][[Category:Flat array languages]][[Category:Leading axis languages]]
{{APL dialects}}[[Category:APL dialects]][[Category:Flat array languages]][[Category:Leading axis languages]]

Navigation menu