I am a little bit confused. I see word written around the internet dating back to 2006 about PHP 6 yet the official site php.net's top post is "PHP 5.3.2 Released!." Clicking on the downloads section only has version 5.3.2. What is going on with PHP 6 and why isn't available? Let me take that back. I did find this http://snaps.php.net/ with PHP 6 listed. Why is this release being hidden? Is PHP 6 an exclusive release for only a select few of the privileged? I doubt that is the reason. Is version 6 so different or buggy that the good folks at php.net believe it is better to hold back on it for now? If you know please share what you know.

Thank you.

    Thank you Weeds. Your answer and link were very helpful and revealing. I guess PHP 6 still has a ways to go before it is ready for release. I didn't mean to appear impatient about 6. I guess I am just excited about diving in and getting to know and use all the great new features of 6.

      julesmanson;10947181 wrote:

      Thank you Weeds. Your answer and link were very helpful and revealing. I guess PHP 6 still has a ways to go before it is ready for release. I didn't mean to appear impatient about 6. I guess I am just excited about diving in and getting to know and use all the great new features of 6.

      You can always download the latest version of PHP 6 from CVS and compile it. I've been messing around with it on a CentOS 5 box for a little while.

        julesmanson wrote:

        I guess I am just excited about diving in and getting to know and use all the great new features of 6.

        As am I; but exploring 5.3's support of closures is still keeping me thoroughly occupied. It can't cope with $this, but it still hasn't been decided how 6 will handle it either.

        The nice thing about open source development is that it is open; even if you don't contribute you can see what's happening and what's coming, and even try it out, well in advance of its arrival.

        One other thing to note is that when PHP 5 was released, PHP 4 was still supported (though development ceased) for over a year afterwards. The same changeover will probably apply here, too.

          I wish I were advanced enough in PHP, or computer science for that matter, to engage yall in a conversation about closures. I recall those being related to anonymous functions which I am still confused about. I taught myself PHP and related programming languages so right now I am only advanced as applying OOP in MVC and other design patterns for building my own custom framework. Its one of those things I want to do in order to prove to myself that I can do it. Why do people climb mountains? Because they are there. Plus building one's own framework is a great way to train oneself in PHP/MySQL, AJAX, and Apache.

            Yeah, those are the things. I like them. One noteworthy thing about PHP's implementation (which is due to the way variables are declared simply by using them) is that you have to specify which variables of the containing function are "closed over". It makes the code for the anonymous function look more like a template for creating new functions. Or it's like the anonymous function has two lists of parameters, with the second set supplied by the containing function when it creates the anonymous function, and the first set to be supplied when the anonymous function is called.

            I actually posted an example of how existing code could be converted to use 5.3 closures just the other day: http://www.phpbuilder.com/board/showthread.php?t=10372235

            I will say that if you get too deep into the things and the functional paradigm (as I have done) that PHP's syntax makes things look really hairy: even JavaScript's syntax is better for hardcore FP, and JavaScript has horrible syntax (especially for a functional language).

              a month later
              Weedpacket;10947349 wrote:

              I will say that if you get too deep into the things and the functional paradigm (as I have done) that PHP's syntax makes things look really hairy: even JavaScript's syntax is better for hardcore FP, and JavaScript has horrible syntax (especially for a functional language).

              To me having a variable that store a reference to a function definition or even as argument or return value is nothing new as back in the C,C++ old days we have this feature already. We call it address-of function and pass them as arguments and return values. Perl also uses the same design.

              I guess for developers who are not exposed to other programming languages may find the syntax and concept new but what I am saying is, this feature maybe new to PHP but it is definitely ages old in other programming languages.

              Lesson learn is it pays to be involved in multiple programming languages to understand each unique syntax and features.

                sohguanh wrote:

                Lesson learn is it pays to be involved in multiple programming languages

                I would say it pays to be involved in lower-level programming languages.

                Passing things like the address of a function, a 8-, 16-, 32-, or 64-bit number that simply points to the actual data you want rather than passing the data itself, etc. are topics that might seem foreign to those not familiar with languages other than something like PHP simply because PHP wasn't meant to give you low-level access into what's going on with memory and things of that nature.

                It gets even more fun when you dabble in Assembly or custom linker files or things of that nature. :p

                  bradgrafelman;10950493 wrote:

                  I would say it pays to be involved in lower-level programming languages.

                  Passing things like the address of a function, a 8-, 16-, 32-, or 64-bit number that simply points to the actual data you want rather than passing the data itself, etc. are topics that might seem foreign to those not familiar with languages other than something like PHP simply because PHP wasn't meant to give you low-level access into what's going on with memory and things of that nature.

                  It gets even more fun when you dabble in Assembly or custom linker files or things of that nature. :p

                  Hi I just take a look at you and laserlight public profile, assuming the data is the truth, I am at least 10 years older than all of you! I feel so old already. I have been programming for 12 years now and still is. I hope you all will be 10 years down the road.

                  Happy programming 🙂

                    sohguanh wrote:

                    we have this feature already. We call it address-of function and pass them as arguments and return values. Perl also uses the same design.

                    Couple of things:

                    1. Perl is hardly a paragon of beautiful syntax.

                    2. What you're talking about is not syntax.

                      a year later
                      Weedpacket;10950497 wrote:

                      Couple of things:

                      1. Perl is hardly a paragon of beautiful syntax.

                      Bwahahah!

                      Sorry to dredge up this (fairly) old thread ... but I was just about ROFL at that.

                      Off to check the character limit on my forum .sig 😉

                        9 days later

                        Thanks Weeds. His answer and the link was very helpful and revealing. I guess PHP 6 still has a long way to go before being ready for launch. I did not mean to appear impatient about 6. I think I'm very excited about diving and know and use all the new features of 6.

                          angelicaahlu;10989062 wrote:

                          I guess PHP 6 still has a long way to go before being ready for launch.

                          Definitely, since right now there is no such thing as "PHP 6" in development.

                          EDIT: Current version (trunk) in development right now as reported by the configure.in file is:

                          PHP_MAJOR_VERSION=5
                          PHP_MINOR_VERSION=5
                          PHP_RELEASE_VERSION=0
                          PHP_EXTRA_VERSION="-dev"
                          PHP_VERSION="$PHP_MAJOR_VERSION.$PHP_MINOR_VERSION.$PHP_RELEASE_VERSION$PHP_EXTRA_VERSION"

                          (so 5.5.0-dev).

                            I think PHP's new release process has resulted in PHP 6 being delayed in favour of releasing PHP 5 revisions instead. From that there it looks like there won't be any appearance of v6 in dev until at least the middle of 2012.

                            A lot of the things that were going planned for v6 are already in the pipeline or even in stable releases (e.g., namespaces, closures); I think by the time v6 is on track about the only thing we'll still be waiting for is Unicode.

                              Write a Reply...