Fold: Difference between revisions
Content added Content deleted
mNo edit summary |
("Add category") |
||
Line 30: | Line 30: | ||
("A";1;"B";2;"C";3;"D") |
("A";1;"B";2;"C";3;"D") |
||
</pre> |
</pre> |
||
[[Category:Adverbs]] |
Revision as of 02:42, 9 July 2022
Fold
f/y
x f/y
x f/y
Fold, also known as reduce, foldl and over, takes a dyadic function f
and reduces an array y
using it.
Fold is a very strong utility. For example, you can sum a list using +/
.
+/1 2 3 4 10 ,/("ab";1;`d`a`b) ("a" "b" 1 `d `a `b)
Specifying a left argument x
uses it as an initial value.
3 +/1 2 3 4 13
When used with functions that take more than 2 arguments, fold can take multiple arguments, of which the first one is always the initial value.
{x,y,z}/["A";1 2 3;"BCD"] ("A";1;"B";2;"C";3;"D")