On Mon, Aug 19, 2024 at 7:11 PM Derick Rethans <der...@php.net> wrote: > > Arnaud, Larry, and I have been working on an article describing the > state of generics and collections, and related "experiments". > > You can find this article on the PHP Foundation's Blog: > https://thephp.foundation/blog/2024/08/19/state-of-generics-and-collections/
Thank you Arnaud, Derick, Larry for the article. Do you consider the path of not adding generics to the core at all? In fact, this path is implicitly taken during the last years. So maybe it makes sense to enforce that status quo? Potential steps: - Make the current status quo official by recognizing generics PHPDoc syntax as The Generics for PHP. Just adding a php.net manual page will do. - Recognize Composer as the official PHP tool. It's currently not mentioned on php.net at all. - Suggest using PHPStan or Psalm for generics and type checks. - Add an official specification for generics in the PHP manual to eliminate semantic variances between tools. This will keep the core simple and reduce the maintenance burden, not increase it. Moreover, it does not contradict with any other implementation mentioned in the article, should they happen. In fact, it could be a first baby-step for any of them. There is also an attempt to do generics via attributes – https://github.com/php-static-analysis/attributes – it could potentially be a better alternative of recognising “official” syntax, because unlike PHPDocs, attributes can be available in core and the syntax is checked. What do you folks think? -Roman