Coder Social home page Coder Social logo

Comments (9)

nazariyg avatar nazariyg commented on August 21, 2024

A preview of PHP 7 PHPNG is already available as PHP 5.7.

I'm going to look into how I can describe the current state of affairs with PHP 7 in a more correct way, but the fact is that the improvements from 5.6 are going to be quite minor. 64-bit arithmetics is hardly a major issue with PHP, catchable "call to a member function" is pretty insignificant, and abstract syntax tree has more to do with the compiler and performance than with the usability of the PHP language. As to Joe Watkin's unicode strings, I was looking for the RFC but couldn't find.

Thanks.

from phred.

AllenJB avatar AllenJB commented on August 21, 2024

That's not a preview of PHP7. As stated in the very first line of the blog post it's a preview of the phpng branch (which was specifically for the performance changes), which has now become the basis for PHP7 as noted by both Zeev's blog (and being a core developer he should know) and the "merge phpng to master" rfc.

A lot of developers have been waiting on the phpng merge to start work on features for PHP7 because it was known it was going to make major changes to internal APIs and the developers didn't want to start writing code that would need a major rewrite if/when phpng (or some similar alternative proposal) was merged (while in the end it passed pretty much unanimously among those who voted, there was a huge amount of discussion surrounding it on internal right up to the vote).

Even the most optimistic estimates on internals put the release of PHP7 at over a year away, probably closer to 2. There's plenty of time for a lot more work before then and, as I mentioned previously, plenty of major changes that were previously knocked back for various reasons (including backwards compatibility breakage, which the developers do try to keep to major versions).

AST itself may be more to do with the compiler, but it lays down groundwork that will make future language changes much easier and more maintainable (to the extent that extensions can easily add some syntax level language features, as demonstrated in the RFC)

Joe Watkin's (/u/krakjoe on reddit) unicode strings hasn't had an RFC created for it yet, but he has said in the linked reddit post that he intends to push for its inclusion in PHP7 in some form (and unless the developers find something massively wrong with it or come up with a better proposal, I would wager it's likely to make it in).

For more stuff that may go into PHP7, see the developer wiki, including (but not limited to) https://wiki.php.net/ideas/php6/engine and https://wiki.php.net/ideas/php6

On top of all that you've also got the PHP language spec which is currently being worked on and there's a lot of suggestions for improvements or new features coming out of that (some more likely to happen than others).

As an additional suggestion on how you can write a better description on PHP7, go sign up to the internals mailing list and read through the past few weeks archives (I find gmane,org to by a pretty good interface - even better if you hook it up to an nntp client like Thunderbird).

from phred.

nazariyg avatar nazariyg commented on August 21, 2024

Thank you for the elaborate info. In my excuse, I clearly remember reading somewhere that the chances are good for PHP 7 to be released as soon as the first half of 2015.

If you'd be willing to suggest a short replacement for the first paragraph in the PHP 7 section that would be cool. In any case, I really appreciate your concern.

from phred.

nazariyg avatar nazariyg commented on August 21, 2024

..or for the entire text.

from phred.

terah avatar terah commented on August 21, 2024

Hi nazariyg,

First off, great project.. it looks really interesting. I love the scalar object proposal and think it's something that will really make PHP a much more consistent language. I see you've made reference to scalar objects in the project description. Does the uniform variable syntax === a scalar objects rfc?

from phred.

AllenJB avatar AllenJB commented on August 21, 2024

I won't be submitting alternative text for several reasons:

  1. I'm crap at writing things like that.

  2. As I've repeatedly said, it's way too early to be commenting on PHP7 right now. If you're interested in what may be going into PHP7 and its development, follow internals, otherwise wait until much nearer the time when there will be a lot more to go on (and probably posts about what's going on sent into the community by the developers themselves).

  3. Why even mention it at all? This is a project description, not a blog post. How exactly does the current state of PHP7 (and the history of PHP6) pertain to/impact this project? I don't think it has any relevance and as such doesn't belong here at all

from phred.

nazariyg avatar nazariyg commented on August 21, 2024

@AllenJB I'd disagree with 3) entirely but you've got a point in 2).

from phred.

nazariyg avatar nazariyg commented on August 21, 2024

@terah If you scroll to the end in the first block of examples in PHP RFC: Uniform Variable Syntax you can see

"string"->toLower()

And since the scalar_objects extension and the Uniform Variable Syntax RFC are both authored by Nikita Popov, the feature will most likely be present in PHP 7 one way or another because, as I remember it correctly, Nikita Popov was planning it for an RFC from the start.

from phred.

nazariyg avatar nazariyg commented on August 21, 2024

@AllenJB Made more edits to the PHP 7 section. Thank you.

from phred.

Related Issues (2)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.