/** * @param ApplyInterface $other * * @return ApplyInterface */ public function ap(ApplyInterface $other) { $this->assertSameType($other); $result = []; Std::poll(function ($ii) use(&$result, &$other) { Std::poll(function ($jj) use(&$result, &$other, $ii) { $result[] = Std::call($this->value[$ii], $other->value[$jj]); }, count($other->value)); }, count($this->value)); return $result; }