php-generics-rfc
Mirror of https://wiki.php.net/rfc/generics for easier collaboration (by PHPGenerics)
LazyIter
Lazy array function chains library for PHP inspired in Rust (by nicofff)
php-generics-rfc | LazyIter | |
---|---|---|
13 | 1 | |
185 | 19 | |
2.2% | - | |
0.0 | 2.6 | |
almost 6 years ago | over 2 years ago | |
PHP | ||
- | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
php-generics-rfc
Posts with mentions or reviews of php-generics-rfc.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-06-01.
-
What I always dreamed of PHP 😎 (IMPORTANT!)
About generics: it's very hard.
-
Generics via Attributes in PHP — Can We Have Them?
Nikita wrote a good summary about the topic and, even if we go with type erased, there still the syntax problem to solve.
-
Comparing PHP Collections
Ok) I wrote at the very beginning of the post which collections I will compare. There you can find links to the generics library. I will be very happy when the PHP IDE add support of generics, but the PHP community hasn't decided what the syntax will be. If you can help with this please let me know.
-
TypeScript is working on a proposal to add built-in types in JS that are ignored at runtime. This is exactly what PHP should do as well.
Nikic did a POC about generics a couple years ago and raised some concerns. The first one was performance, if types were to be validated on runtime, and the other was (as always in PHP...) syntax ambiguities, wich could require to use a new parser.
-
Generics implementation approaches
This approach has a small performance/memory effect. Nikita Popov already had an attempt to implement this type of generics in PHP.
-
PHP Generics. Right here. Right now
Doesn't support generic syntax because of RFC is not complete yet.
-
Hows the generics discussion going?
I was reading some stuff and found some discussion going here: https://github.com/PHPGenerics/php-generics-rfc/issues/45
-
Weekly "ask anything" thread
I assume familiarising yourself on the existing discussions on GitHub and the internals mailing list would be a start to understand what the issue with implementing them is, and why the delay for a real implementation. Nikita made some useful notes here: https://github.com/PHPGenerics/php-generics-rfc/issues/45
-
Type-constrained elements collection in PHP ?
These are called generics. PHP currently doesn't support them, but there is work being done towards them being added. There are a lot of complications that need to be figured out before they can be implemented. See https://github.com/PHPGenerics/php-generics-rfc/issues and https://github.com/Danack/RfcCodex/blob/master/generics.md.
LazyIter
Posts with mentions or reviews of LazyIter.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-04-10.
-
Type-constrained elements collection in PHP ?
It seems the only better solution would be an introduction of some lazy kind of iterator, where instances would be created on demand, after being accessed. There are some attempts to address this issue, no idea yet how effective they are. Put in further investigation.
What are some alternatives?
When comparing php-generics-rfc and LazyIter you can also consider the following projects:
php-generics - PHP generics written in PHP
php-strict-array - Generator of strict arrays (vector, map)
php-src - The PHP Interpreter
scalar_objects - Extension that adds support for method calls on primitive types in PHP
you-are-using-it-wrong - :oncoming_police_car: Type check enforcement for library authors: enforces type-safety downstream
php-generics-example