PHP - função de redução () de sequência Ds

A função Ds \ Sequence :: reduce () pode reduzir a sequência a um único valor usando uma função de retorno de chamada.

Sintaxe

public abstract mixed Ds\Sequence::reduce( callable $callback [, mixed $initial ] )

A função Ds \ Sequence :: reduce () pode retornar o valor do retorno de chamada final.

Exemplo 1

<?php
   $seq = new \Ds\Vector([1, 2, 3]);
   $callback = function($carry, $value) {
      return $carry * $value;
   };
   var_dump($seq->reduce($callback, 5));
?>

Exemplo 2

<?php
   $seq = new \Ds\Vector([1, 2, 3]);
   
   var_dump($seq->reduce(function($carry, $value) {
      return $carry + $value + 5;
   }));
?>