def reduce
import bend-lawful-stdlib@0.1.0.0/src/tree.bend as Treeimport Base
import bend-lawful-stdlib@0.1.0.0/src/class.bend as C
21def reduce(~A: Data, ~m: C.Semigroup<A>, t: Tree<A>) -> A:
22 match t:
23 case Tip{x}:
24 x
25 case Fork{l, r}:
26 a b = reduce(~A, ~m, l) reduce(~A, ~m, r)
27 C.Semigroup.op(A, m, a, b)