Re: A possible defining characteristic of PHP 6 ( was [off] PHP: a fractal of bad design )

From: Date: Sun, 15 Apr 2012 22:33:02 +0000
Subject: Re: A possible defining characteristic of PHP 6 ( was [off] PHP: a fractal of bad design )
References: 1  Groups: php.internals 
Request: Send a blank email to internals+get-59971@lists.php.net to get a copy of this message
Hi, Michael 2012/4/13 Michael Morris <dmgx.michael@gmail.com> > > It would not be easy.  I lack the skills required.  And those who have > the skills lack the monumental time required.  But PHP could do what > Adobe did with Actionscript.  But it would not be easy or painless. It > probably isn't worth it.  But the tools are in place and there are RFC > ideas out there that, taken together might accomplish a fix.  But to > what end? I'm currently working on getting into the C (and C++) code for PHP, reading the articles on ircmaxell's blog: http://blog.ircmaxell.com/2012/03/phps-source-code-for-php-developers.html If you want to develop and help the php-community, I think this is a good place to start from. > > The idea I thought of a long time ago when AS3 came out was to do much > the same with PHP.  PHP 6 would ship with a legacy mode.  In that mode > all the existing functions would exist on the root namespace.  Turn it > off though and those functions disappear and get moved to \Legacy. > What actually remains is a remapped function library, perhaps taking > advantages of the autoboxing RFC to "fake" primitives as objects and > allow the sort of chaining we see in JavaScript.  Not every possible > function would be present in this model - libraries such as mysql, > mysqli or pdo would be imported into scope. On one side I'd like to have a namespaced core ... but I don't think this would be a good idea to say that no script written for PHP5 will work in PHP6 an vice-versa. > > But this wouldn't be easy, and I don't think the willpower exists to > do it. This is after all a volunteer effort, and there are some things > that are simply out of the scope of such efforts. > > PHP's goal has always been KISS, but the decisions over the last few > years run contrary to that.  Most onerous is, where Javascript, Java > and C have one scope resolution operator - a period - PHP has three > (->, \, :: ).  The only possible backwards compat fix to that is to > set up PHP 6 to not give a rat's ass about which of the three you use. >  That would restore simplicity, and two of the operators would die off > (my money is on :: and \ dying) in common use.  The engine > implications of that change are likely staggering.  This isn't the > only structural issue that needs to be addressed either.  Taken > together they are significant. > > As to the original post that started this - it is what it is, a > blogger wanting attention, stating the obvious and trying to look > smart.  I'm singularly unimpressed and reading the other responses I'm > not alone. > > It would help to have a conversation about what we want the next major > to be like before starting any work on it.  Otherwise it will just be > another evolution when what PHP really could use is a revolution the > likes of which hasn't been seen since PHP 3 came out.  But that > conversation itself will take time and the scope of what must be done > must truly be daunting.

« previous php.internals (#59971) next »