public function map(callable $fn) : self
    {
        $validate = $fn instanceof Closure;

        return new static(array_map($fn, $this->a), $validate);
    }
public function map(callable $fn) : self
    {
        $validate = $fn instanceof Closure;

        return new static(array_map($fn, $this->a), $validate);
    }
public function map ( callable $ fn ) : self { $ validate = $ fn instanceof Closure ; return new static ( array_map ( $ fn , $ this -> a ) , $ validate ) ; }
Map a function over the elements in the vector and return a new
vector.

@param callable $fn
@return self
Map a function over the elements in the vector and return a new vector .