Beside: Difference between revisions
Jump to navigation
Jump to search
(fix the example related to hook) |
|||
Line 27: | Line 27: | ||
<source lang=apl> | <source lang=apl> | ||
≡∘⌽⍨'UwU' | ≡∘⌽⍨'UwU' | ||
1 | |||
⍝ same as this, because operator is left-associative, unlike functions which is right-associative | |||
'UwU'(≡∘⌽)⍨'UwU' | |||
1 | 1 | ||
⍝ same as | ⍝ same as |
Revision as of 09:03, 6 September 2021
∘
|
Beside (∘
), Compose or After is a primitive operator. It shares the glyph ∘
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 use monadically, f∘g
behaves the same as function compositian.
-∘÷ 2 ¯0.5 ⍝ same as -(÷2) ¯0.5
When use dyadically,
'oy'≡∘⌽'yo' 1 ⍝ same as 'oy'≡⌽'yo' 1
When used with Commute, f∘g
forms a Hook.
≡∘⌽⍨'UwU' 1 ⍝ same as this, because operator is left-associative, unlike functions which is right-associative 'UwU'(≡∘⌽)⍨'UwU' 1 ⍝ same as 'UwU'≡⌽'UwU' 1
External links
Lessons
Documentation