No, if you do that, you potentially re-create it every time. I was thinking of something like this:

```php
public function getInstance(Constraint $constraint)
{
    $name = $constraint->validatedBy();

    if (isset($this->validators[$name])) {
        return $this->validators[$name];
    }

    $this->validators[$name] = $this->createValidator($name);
    return $this->validators[$name];
}

private function createValidator($name)
{
    if (isset($this->serviceNames[$name])) {
        return $this->container[$this->serviceNames[$name]];
    }

    return new $name();
}
```