Am 12.09.2013 14:18 schrieb "Johannes Schlüter" <johan...@schlueters.de>: > > Hi, > > there is some talk about contributing new features and roadmaps for > PHP. What is missing is talk about maintenance. > > PHP is developing really fast, if you consider the distribution we > reach. > > Let's take a look at the last few years and the amount of language > changes. PHP 5.2 was releasesd in 2006. 7 years ago. After that we > struggled a bit with our PHP 6 project which resulted in 5.3 in in 2009. > In those three years we've added > * lambdas > * A new operator ( ?: ) > * Namespaces > * Late static Binding > * __callStatic > * dynamic access of static members > * __DIR__ > > Again three years later in 2012 we released 5.4.0 with > * short array syntax > * binary numbers > * traits > * closure $this > * array dereferencing > * different indirect fcall improvements > > Just a single year later in 2013 we release 5.5.0 with > * generators and coroutines > * finally > * constant array/string dereferencing. > * ::class > * empty() on the result of function calls and other expressions > * non-scalar Iterator keys in foreach > * list in foreach > > That is a lot of language change (ignoring all "library" changes, > things we removed optimizations being made, ...) in seven years. > > Let's compare this to a few other widespread languages: > * With C there is a commonly used standard C89/C90, a newer > version C99 and a bug fix version C11. C99 to a large part is a > catchup with C++ features already provided by many compilers > (inline functions, intermingled declarations and code, //-style > comments) and a few new features (newdata types, variable-length > arrays, designated initializers, compound literals and support > for variadic macros) that is a lot but took them ten years and > still is not incommon use. C11 another ten years later brought > some multithreading, some unicode, Bounds-checking interfaces > and static assertions. > * With C++ there is C++89. C++03 was a minor bug fix. In 2007 TR1 > was released which included library features. In 2011 C++11 came > out. 12 years after the last "real" version. This included a > looong list of languages features. next planned is C++14 which > will bring one language feature (concepts) > * With Java 6 was released in 2006. 2011 Java 7 came and "added > many small language changes including strings in switch, > try-with- resources and type inference for generic instance > creation". Java 8 will, probably, be released in 2014 and adds > lambdas and a few annotations > > For other languages I don't know enough about them to summarize > language changes. But I'm quite sure PHP is among the fastest evolving > languages. > > This is nice but bears two problems: > 1. Adoption. Take any statistic and trust it as much as you like > and we're now somewhere around the time where 5.3 overtakes 5.2 > in total usage. Far ahead of 5.4 and 5.5. > 2. Bugs. https://bugs.php.net/stats.php currently lists 3974 open > issues. > > I think for both of the issues it is good if we slow down a bit and > try to fix more bugs instead of adding new ones. > > Now contributing bug fixes is also not 100% painless as we have to > review patches and we are limited in resources. Especially as we have > code areas with very few interested active developers while we need > experienced developers who know PHPisms for reviewing. > > I'd love if the people who are enthusiastic about contributing to PHP > would go and help working on these bugs. This can be done simply by > reviewing reports or by writing patches. If you are stuck in a place > while trying to write a patch or analyzing a bug ask here, ask on the > quieter pecl-dev list or #php.pecl on efnet irc. If you provide a patch > and think it is being ignored for too long ask for a review. Usually > after the second time there will be somebody. Asking also shows you're > eager to improve PHP, which will give you an account and karma quite > quickly. > > A good start might be this bug: https://bugs.php.net/random > > > Thanks for going through this long mail and helping to make PHP better, > johannes > > > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php
Maybe something else.... Complaining is easier than contribution....