# fold

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")