Deep amend: Difference between revisions
Content added Content deleted
No edit summary |
No edit summary |
||
Line 6: | Line 6: | ||
* <code>x</code> is an array to amend |
* <code>x</code> is an array to amend |
||
* <code>y</code> is the index route to amend |
* <code>y</code> is the index route to amend |
||
* <code>z</code> |
* <code>z</code> is the function to apply to those indices |
||
* <code>u</code> is the second argument to <code>z</code> |
* <code>u</code> (optional), is the second argument to <code>z</code> |
||
It is very similar to [[Amend]] in its functionality. The main difference is that <code>y</code> when given an array indexes into subarrays when used. |
It is very similar to [[Amend]] in its functionality. The main difference is that <code>y</code> when given an array indexes into subarrays when used. |
||
<pre> .[3 3#!9;1 1;-:] |
|||
0 1 2 |
|||
3 -4 5 |
|||
6 7 8</pre> |
|||
== ngn/k == |
== ngn/k == |
Revision as of 08:42, 20 January 2022
Deep amend
.[x;y[;f];z]
Deep Amend, also known as dmend or drill is a deep version of Amend which allows modification of elements which are nested deep inside an array.
Deep Amend takes 3 or 4 arguments, where:
x
is an array to amendy
is the index route to amendz
is the function to apply to those indicesu
(optional), is the second argument toz
It is very similar to Amend in its functionality. The main difference is that y
when given an array indexes into subarrays when used.
.[3 3#!9;1 1;-:] 0 1 2 3 -4 5 6 7 8
ngn/k
ngn/k's amend has z
as the optional argument, instead of having f
as an optional argument.