Beside (∘), Compose or After is a primitive operator. It shares the glyph Jot (∘) with Bind. Called dyadically with function operands f and g, it uses g monadically to pre-processes the right argument before applying f to the given left argument and pre-processed right argument. Called monadically with operands f and g, it applies f to the result of applying g to the argument.
In usage, X f∘g Y is equivalent to X f g Y, and f∘g Y is equivalent to f g Y. Thus, beside can be defined as the dop {⍺←⊢ ⋄ ⍺ ⍺⍺ ⍵⍵ ⍵}.
Examples
When used monadically, f∘g behaves the same as an atop:
-∘÷ 2
¯0.5
⍝ same as
-(÷2)
¯0.5
When used dyadically, f∘g forms a dyadic hook:
'oy'≡∘⌽'yo'
1
⍝ same as
'oy'≡⌽'yo'
1
When used monadically with Commute, f∘g forms a monadic hook:
≡∘⌽⍨'UwU'
1
⍝ same as this, because operators are left-associative, unlike functions which are right-associative
(≡∘⌽)⍨'UwU'
1
⍝ same as
'UwU'≡⌽'UwU'
1
This is equivalent to the dyadic behaviour of Withe f⍩g.
External links
Lessons
Documentation
| APL built-ins [edit]
|
| Primitives (Timeline) |
Functions
|
| Scalar
|
| Monadic
|
Conjugate ∙ Negate ∙ Signum ∙ Reciprocal ∙ Magnitude ∙ Exponential ∙ Natural Logarithm ∙ Floor ∙ Ceiling ∙ Factorial ∙ Not ∙ Pi Times ∙ Roll ∙ Type ∙ Imaginary ∙ Square Root ∙ Round
|
| Dyadic
|
Add ∙ Subtract ∙ Times ∙ Divide ∙ Residue ∙ Power ∙ Logarithm ∙ Minimum ∙ Maximum ∙ Binomial ∙ Comparison functions ∙ Boolean functions (And, Or, Nand, Nor) ∙ GCD ∙ LCM ∙ Circular ∙ Complex ∙ Root
|
| Non-Scalar
|
| Structural
|
Shape ∙ Reshape ∙ Tally ∙ Depth ∙ Ravel ∙ Enlist ∙ Table ∙ Catenate ∙ Reverse ∙ Rotate ∙ Transpose ∙ Raze ∙ Mix ∙ Split ∙ Enclose ∙ Nest ∙ Cut (K) ∙ Pair ∙ Link ∙ Partitioned Enclose ∙ Partition
|
| Selection
|
First ∙ Pick ∙ Take ∙ Drop ∙ Unique ∙ Identity ∙ Stop ∙ Select ∙ Replicate ∙ Expand ∙ Set functions (Intersection ∙ Union ∙ Without) ∙ Bracket indexing ∙ Index ∙ Cartesian Product ∙ Sort
|
| Selector
|
Index generator ∙ Grade ∙ Index Of ∙ Interval Index ∙ Indices ∙ Deal ∙ Prefix and suffix vectors
|
| Computational
|
Match ∙ Not Match ∙ Membership ∙ Find ∙ Nub Sieve ∙ Encode ∙ Decode ∙ Matrix Inverse ∙ Matrix Divide ∙ Format ∙ Execute ∙ Materialise ∙ Range ∙ Count In
|
| Operators |
Monadic
|
Each ∙ Commute ∙ Constant ∙ Replicate ∙ Expand ∙ Reduce ∙ Windowed Reduce ∙ Scan ∙ Outer Product ∙ Key ∙ I-Beam ∙ Spawn ∙ Function axis ∙ Identity (Null, Ident)
|
| Dyadic
|
Bind ∙ Compositions (Compose, Reverse Compose, Beside, Withe, Atop, Over) ∙ Inner Product ∙ Determinant ∙ Power ∙ At ∙ Under ∙ Rank ∙ Depth ∙ Variant ∙ Stencil ∙ Cut ∙ Direct definition (operator) ∙ Identity (Lev, Dex)
|
| Quad names
|
Index origin ∙ Comparison tolerance ∙ Migration level ∙ Atomic vector
|