Re: Closures: $this support removed for 5.3 beta 1 (but NOT in HEAD!)

From: Date: Mon, 26 Jan 2009 23:34:55 +0000
Subject: Re: Closures: $this support removed for 5.3 beta 1 (but NOT in HEAD!)
References: 1  Groups: php.internals 
Request: Send a blank email to internals+get-42855@lists.php.net to get a copy of this message
On 27.01.2009, at 00:19, Christian Seiler wrote:
as Lukas and Johannes have requested, I have removed $this support from Closures in PHP 5.3.
Thx!
Technical details on the changes can be found here: http://wiki.php.net/rfc/closures/removal-of-this (I didn't have time to write new tests for everything, I just removed those tests which didn't make sense at all and changed the rest in order to accommodate the current semantics.)
So please everybody hammer these changes hart.
I'd like to add that the Reflection part was really quite a mess. Marcus's property-calling-patch was not correctly revoked from the Reflection part (there was still quite a bit of code there in php_reflection.c). Also there were (independent of that) some changes to my original proposal that - as far as I know - were never discussed on-list. Which in this case caused two problems: Inconsistencies (see ReflectionParameter part in the above page) and there were some memory management issues (which don't occur if you keep your objects always around at least as long as the reflection objects themselves - and thus not during simple tests - but nevertheless issues). I don't want to assign blame here to anyone (the errors are errors I could have *easily* made myself), I just want to point out that if the changes had actually been discussed beforehand, this could have been avoided. I recognize that not everybody will be 100% happy with the changes I made to reflection even in light of the $this removal. However, in the few days it took until the beta1 freeze (today) I think I have found the sanest consistent solution for the problems. I do however acknowledge that we may need to tweak some minor things wrt. reflection here and there after beta 1.
<snip> thx for this summary and proposal .. its important that we continuesly seek ways to optimize this often asynchronous development sprints by the various people across the world .. since I do not have the expertise to comment I will leave it to others to reply. regards, Lukas Kahwe Smith mls@pooteeweet.org

« previous php.internals (#42855) next »