op-purpose: apply a subfilter to each input title in turn, accumulating a single value
tags: [[Filter Operators]]
title: reduce Operator
type: text/vnd.tiddlywiki
<<.from-version "5.1.23">> The <<.op reduce>> operator runs a subfilter for each input title, passing the result of the previous subfilter run as a variable. The initial value of the accumulator can optionally be specified. It returns the result of the final subfilter run.
The <<.op reduce>> operator is used to flatten a list of items down to a single item by repeatedly applying a formula. A typical use is to add up the values in a given field of a list of tiddlers.
The following variables are available within the subfilter:
* ''accumulator'' - the result of the previous subfilter run
<$macrocall $name=".tip" _="""If the optional second parameter is not given, the initial accumulator value will be empty. Numerical operators treat empty input as if it was the number 0. See the multiply-input examples for how this can affect the result of <<.op reduce>> in some cases."""/>