PHP 5.3 Released 120
Sudheer writes "The PHP development team is proud to announce the immediate release of PHP 5.3.0. This release is a major improvement in the 5.X series, which includes a large number of new features and bug fixes. Some of the key new features include: namespaces, late static binding, closures, optional garbage collection for cyclic references, new extensions (like ext/phar, ext/intl and ext/fileinfo), over 140 bug fixes and much more."
Looking Forward To It (Score:5, Insightful)
I truly appreciate the hard work of the PHP development team and the free language they have given us, congratulations on the new release.
Re:Would you let it die already? (Score:3, Insightful)
I don't think that's quite fair. I think if the functions, calling conventions and naming were regularized, it would be a reasonably decent scripting language. But it's because it suffers multiple personality disorder that it's a horrendous pain.
Re:features! (Score:3, Insightful)
Re:Horray (Score:1, Insightful)
Re:features! (Score:4, Insightful)
Anyway, exceptions in languages like Java which enforces its treatment in compile time are more than just a "goto error handling". It all depends on the language you are using.
Re:Nuisances (Score:3, Insightful)
Uh, no.
Assuming that people running and maintaining the code are paying any attention, when 6.0 rolls out, those installations that have working code relying on features long-announced for deprecation that are removed in 6.0 will not upgrade to 6.0.
Major new interpreter versions enable new projects, and old projects can be migrated to them if there is a reason. But they aren't intended to be minor, backward compatible, performance improvement and bug fix releases -- that's why they are called major versions.
Re:Would you let it die already? (Score:5, Insightful)
I think if the functions, calling conventions and naming were regularized
...and they removed the sigils, and removed the silent type coercion, and eliminated the "@" function prefix, and removed the "global" keyword, and removed the weird "list" lvalue function that looks-like-functional-pattern-matching-but-really-just-cosmetically, and fixed the pass-by-reference semantic...
But if you did all of these things, it really wouldn't be PHP anymore.
Re:Hooray fileinfo is standard! (Score:4, Insightful)
__construct() is a magic method, just like __get(), __set(), __destruct(), __isset(), __toString(), so on and so forth. Magic methods are called without the programmer having to call them, under specific circumstances. In the case of __construct(), it's called when an object is instantiated. '__' defines a magic method and was chosen back in the day because PHP didn't have protected/private members and so the common practice was to prefix private/protected members with one underscore.
PHP was a solution to Perl, so -> is what Perl uses so that's what PHP uses.
The function naming is not so much an issue either. But what is frustrating is argument order. That's something that really needs to be revamped, backwards compatibility be damned.
Re:Hooray fileinfo is standard! (Score:3, Insightful)
In seriousness, I'm with the OP. I wish the ridiculous language evangelism would stop. In the end, people are just being short sighted and limiting the tools at their disposal.
Re:Looking Forward To It (Score:2, Insightful)
No, no no. PHP is the "new COBOL". It's a horrible language, but it's built up too much inertia to get rid of it or most of its backward-compatibility disasters.
If you want the new VB take a look at Ruby - a language that lets you bring any webserver to its knees in only 5 minutes and 10* lines of code, no experience required.
*plus 800000 lines of framework
Re:Comparison PHP - Java (Score:2, Insightful)