> Le 3 juil. 2024 à 11:54, Claude Pache <claude.pa...@gmail.com> a écrit :
> 
> 
> 2. As for readonly, I think that the invariant it is supposed to provide 
> should be enforced as strictly as possible. It means that `readonly` is only 
> acceptable if there is no `get` hook.

Hi,

One more thing, why I think that we should be strict here. It is not just for 
preventing the user to write *dumb* code, it is also for preventing them to 
write *creative* code, e.g.

```php
class doc {
    public readonly int page {
        get => $this->page + $this->offset;
    }
    private int $offset = 0;
    public function __construct(int $page) {
        $this->page = $page;
    }
    public function foo() {
        // $this->offset may be adjusted here
    }
}
```

—Claude

Reply via email to