: Marcus Boerger [mailto:[EMAIL PROTECTED]
> Sent: Friday, March 31, 2006 6:42 PM
> To: Dmitry Stogov
> Cc: 'Michael Lively Jr.'; 'Andi Gutmans'; 'PHP-DEV'
> Subject: Re: [PHP-DEV] [PATCH] Late Static Binding (Take 2)
>
>
> Hello Dmitry,
>
essage-
>> From: Michael Lively Jr. [mailto:[EMAIL PROTECTED]
>> Sent: Thursday, March 30, 2006 8:53 PM
>> To: Dmitry Stogov
>> Cc: 'Andi Gutmans'; 'PHP-DEV'; 'Marcus Boerger'
>> Subject: Re: [PHP-DEV] [PATCH] Late Static Binding (Take 2
--
>> From: Michael Lively Jr. [mailto:[EMAIL PROTECTED]
>> Sent: Thursday, March 30, 2006 8:53 PM
>> To: Dmitry Stogov
>> Cc: 'Andi Gutmans'; 'PHP-DEV'; 'Marcus Boerger'
>> Subject: Re: [PHP-DEV] [PATCH] Late Static Binding (Take 2)
I almost had a finished another patch myself using EG() but I had to
take a break to pay my bills :/. Thanks for looking at this Dmitry. I
will go ahead and put together a more exhaustive use case for
this over
the weekend.
Would you like to add (modify) something to my patch?
No,
Hi Michael,
> -Original Message-
> From: Michael Lively Jr. [mailto:[EMAIL PROTECTED]
> Sent: Thursday, March 30, 2006 8:53 PM
> To: Dmitry Stogov
> Cc: 'Andi Gutmans'; 'PHP-DEV'; 'Marcus Boerger'
> Subject: Re: [PHP-DEV] [PATCH] Late Stati
ch 09, 2006 12:06 AM
To: Dmitry Stogov
Cc: Andi Gutmans; PHP-DEV; Marcus Boerger
Subject: [PHP-DEV] [PATCH] Late Static Binding (Take 2)
On Wed, 2006-03-01 at 17:37 +0300, Dmitry Stogov wrote:
1) I would very like to see some real example where "static" is
necessary?
2) "st
-Original Message-
From: Mike Lively [mailto:[EMAIL PROTECTED]
Sent: Thursday, March 09, 2006 12:06 AM
To: Dmitry Stogov
Cc: Andi Gutmans; PHP-DEV; Marcus Boerger
Subject: [PHP-DEV] [PATCH] Late Static Binding (Take 2)
On Wed, 2006-03-01 at 17:37 +0300, Dmitry Stogov wrote:
1) I wou
--Original Message-
> From: Mike Lively [mailto:[EMAIL PROTECTED]
> Sent: Thursday, March 09, 2006 12:06 AM
> To: Dmitry Stogov
> Cc: Andi Gutmans; PHP-DEV; Marcus Boerger
> Subject: [PHP-DEV] [PATCH] Late Static Binding (Take 2)
>
>
> On Wed, 2006-03-01 at 17:37 +0300
Yeah I agree but I'm less concerned about the
naming at this point but how to implement it assuming we find a name.
Andi
At 04:18 PM 3/8/2006, David Zülke wrote:
I'd still say we make it "this". It's reasonable and consistent.
- David
Am 09.03.2006 um 01:13 schrieb Andi Gutmans:
This patc
I'd still say we make it "this". It's reasonable and consistent.
- David
Am 09.03.2006 um 01:13 schrieb Andi Gutmans:
This patch is a bit rough. I'll try and think if there's a more
elegant way.
Andi
At 01:06 PM 3/8/2006, Mike Lively wrote:
On Wed, 2006-03-01 at 17:37 +0300, Dmitry Stog
This patch is a bit rough. I'll try and think if there's a more elegant way.
Andi
At 01:06 PM 3/8/2006, Mike Lively wrote:
On Wed, 2006-03-01 at 17:37 +0300, Dmitry Stogov wrote:
> 1) I would very like to see some real example where "static" is necessary?
>
> 2) "static" is really bad name. I s
On Wed, 2006-03-01 at 17:37 +0300, Dmitry Stogov wrote:
> 1) I would very like to see some real example where "static" is necessary?
>
> 2) "static" is really bad name. I suggest "caller", Marcus thought about
> "class".
>
> 3) I COMPLETELY DISAGREE TO ADD RUNTIME DATA INTO
> zend_function/zend_o
+1 for this::
Andi Gutmans wrote:
Yep. I was thinking mainly of methods not of static variables. I still
think this:: is the best way (better than class::)
At 12:12 PM 3/2/2006, Jeff Moore wrote:
On Mar 2, 2006, at 2:23 PM, Andi Gutmans wrote:
Do you expect significant BC breakage?
Hel
> Cc: [EMAIL PROTECTED]; Lukas Smith; Derick Rethans; Dmitry
> Stogov; Andi Gutmans; 'PHP-DEV'; 'Marcus Boerger'
> Subject: Re: [PHP-DEV] [PATCH] Late Static Binding
>
>
> Hello Jeff,
>
> Thursday, March 2, 2006, 8:21:08 PM, you wrote:
>
> >
Yep. I was thinking mainly of methods not of static variables. I
still think this:: is the best way (better than class::)
At 12:12 PM 3/2/2006, Jeff Moore wrote:
On Mar 2, 2006, at 2:23 PM, Andi Gutmans wrote:
Do you expect significant BC breakage?
Hello Andi,
Here is an example where ch
On Mar 2, 2006, at 2:23 PM, Andi Gutmans wrote:
Do you expect significant BC breakage?
Hello Andi,
Here is an example where changing self to late binding would change
behavior:
class A {
static $a = "hello world";
static function getA() {
return self::$a;
Hello Jeff,
Thursday, March 2, 2006, 8:21:08 PM, you wrote:
> On Mar 2, 2006, at 11:33 AM, Mike Lively wrote:
> Hi Mike,
>> In regards to naming: 'static' wasn't my first choice either. In fact I
>> was originally using 'this::' due to me misreading the notes from the
>> PDM.
> Does 'this' wor
Hello David,
to me it was excellent in the first place, too. But when i started
thinking about it and wrote some lines of coude i came to the result
that the code is no longer understandable.
marcus
Thursday, March 2, 2006, 8:17:22 PM, you wrote:
> this:: would be excellent, since $this also
Hello,
On Thu, 2006-03-02 at 14:21 -0500, Jeff Moore wrote:
> On Mar 2, 2006, at 11:33 AM, Mike Lively wrote:
>
> Hi Mike,
>
> > In regards to naming: 'static' wasn't my first choice either. In fact I
> > was originally using 'this::' due to me misreading the notes from the
> > PDM.
>
> Does 't
Do you expect significant BC breakage?
At 07:27 AM 3/2/2006, Lukas Smith wrote:
Derick Rethans wrote:
On Thu, 2 Mar 2006, Jeff Moore wrote:
Unfortunately, the problem with making self late binding is that that there
are potential BC breaks. Is that possibility on the table?
I don't think we
On Mar 2, 2006, at 11:33 AM, Mike Lively wrote:
Hi Mike,
In regards to naming: 'static' wasn't my first choice either. In fact I
was originally using 'this::' due to me misreading the notes from the
PDM.
Does 'this' work ok? I like that one. this:: and $this would both be
late binding one
this:: would be excellent, since $this also references the actual
class that's calling, not the one that declares. Very good idea!
+1
- David
Am 02.03.2006 um 20:14 schrieb Andi Gutmans:
What about this:: ? Too confusing?
At 08:33 AM 3/2/2006, Mike Lively wrote:
Hallo,
Firstly thanks fo
What about this:: ? Too confusing?
At 08:33 AM 3/2/2006, Mike Lively wrote:
Hallo,
Firstly thanks for the comments. In regards to storing caller_scope in
op_array: the arguments against this make perfect sense. I am still
figuring out all of the nuances of the zend engine...so, equate it to
rook
Hallo,
Firstly thanks for the comments. In regards to storing caller_scope in
op_array: the arguments against this make perfect sense. I am still
figuring out all of the nuances of the zend engine...so, equate it to
rookie mistake :P.
I've tried rewriting the patch to use zend_execute_data to sto
Derick Rethans wrote:
On Thu, 2 Mar 2006, Jeff Moore wrote:
Unfortunately, the problem with making self late binding is that that there
are potential BC breaks. Is that possibility on the table?
I don't think we should break any BC over this.
Neither do I.
regards,
Lukas
--
PHP Internals
On Thu, 2 Mar 2006, Jeff Moore wrote:
> Unfortunately, the problem with making self late binding is that that there
> are potential BC breaks. Is that possibility on the table?
I don't think we should break any BC over this.
Derick
--
PHP Internals - PHP Runtime Development Mailing List
To un
On Mar 1, 2006, at 9:50 PM, Andi Gutmans wrote:
Yeah static is very confusing and I think it's a bad idea.
I'm trying to think what a non-confusing way would be. Some ideas
would be:
a) using "class" e.g. class::method()
b) change behavior of self:: to always be "virtual" and have people
us
final::foo();
Dmitry Stogov wrote:
-Original Message-
From: Andi Gutmans [mailto:[EMAIL PROTECTED]
Sent: Thursday, March 02, 2006 5:51 AM
To: Dmitry Stogov; 'Marcus Boerger'; 'Mike Lively'
Cc: 'PHP-DEV'
Subject: RE: [PHP-DEV] [PATCH] Late Static
Your examples 1-4 are bad.
They snould use non-static methodos.
Wrong. Example: Singletons where you could just do "MyObj extends
SingletonObj" without having to re-implement getInstance().
- David
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php
Agree.
The following constructs should use the same :::foo()
get__calss()
> -Original Message-
> From: Jeff Moore [mailto:[EMAIL PROTECTED]
> Sent: Thursday, March 02, 2006 2:04 AM
> To: 'Mike Lively'
> Cc: PHP-DEV
> Subject: Re: [PHP-DEV] [PATCH] Late Stat
gt; Sent: Wednesday, March 01, 2006 11:45 PM
> To: Dmitry Stogov
> Cc: 'Mike Lively'; 'Andi Gutmans'; 'Marcus Boerger'; 'PHP-DEV'
> Subject: Re: [PHP-DEV] [PATCH] Late Static Binding
>
>
>
> On Mar 1, 2006, at 9:37 AM, Dmitry Stog
> -Original Message-
> From: Andi Gutmans [mailto:[EMAIL PROTECTED]
> Sent: Thursday, March 02, 2006 5:51 AM
> To: Dmitry Stogov; 'Marcus Boerger'; 'Mike Lively'
> Cc: 'PHP-DEV'
> Subject: RE: [PHP-DEV] [PATCH] Late Static Binding
>
&
At 06:37 AM 3/1/2006, Dmitry Stogov wrote:
1) I would very like to see some real example where "static" is necessary?
It's needed when you implement a convention based system where the
name of the Class has a meaning. For example in an OORDBMS mapping
system, the name of the class could be th
On Feb 23, 2006, at 5:06 PM, Mike Lively wrote:
I also added a new function get_caller_class() which returns the name
of
the class that static:: would represent.
I find get_caller_class() a bit confusing because it introduces new
terminology (caller). May I suggest adding:
get_self_class
On Mar 1, 2006, at 3:45 PM, Jeff Moore wrote:
static protected function configure($obj) {
$obj = 'A';
}
Oops. That should be $obj->iprop = 'A'.
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
On Mar 1, 2006, at 9:37 AM, Dmitry Stogov wrote:
1) I would very like to see some real example where "static" is
necessary?
Some use cases for late static binding, tested using self on 5.1.2:
1. What class am I really?
class A {
static function myclass() {
return get_class();
Marcus Boerger wrote:
Hello Lukas,
no the way things are now are just as expected.
my point was this:
why even bother with self:: ? you could just as well use the class name.
its just syntactical sugar .. however late static binding actually gives
you a useful feature (well one could argue
Dmitry Stogov wrote:
Patched PHP will modify zend_function->caller_scope at runtime.
This can break ZTS version and probaby opcode caches.
Storing runtime information in zend_function is bad decision.
maybe stating the obvious here .. but opcode caches are important to
everybody on this list
On Wed, 1 Mar 2006, Lukas Smith wrote:
> Zeev Suraski wrote:
>
> > 1. I don't think it's a very important feature, even though like any other
> > feature we could possibly think of, we can come with use cases where it
> > would be useful. In terms of complexity vs. usefulness, I think it's mor
On Wed, 1 Mar 2006, Zeev Suraski wrote:
> I actually don't recall there was consensus on even adding this feature in the
> Paris meeting, let alone how to name it.
You didn't object to the meeting notes either (on this part). This is
the link to the notes again:
http://www.php.net/~derick/meeti
On Wed, 1 Mar 2006, Dmitry Stogov wrote:
> Yes I like not a sintetic test but real life example (singleton, factory or
> something else).
> (I tried to write generic singleton but it wasn't exelent.)
I do have an example somewhere, but I have to find it again :)
regards,
Derick
--
PHP Internal
Hello Lukas,
no the way things are now are just as expected.
marcus
Wednesday, March 1, 2006, 6:08:23 PM, you wrote:
> Zeev Suraski wrote:
>> 1. I don't think it's a very important feature, even though like any
>> other feature we could possibly think of, we can come with use cases
>> wh
Zeev Suraski wrote:
1. I don't think it's a very important feature, even though like any
other feature we could possibly think of, we can come with use cases
where it would be useful. In terms of complexity vs. usefulness, I
think it's more complex than useful.
So how about this ... make
At 18:32 01/03/2006, Lukas Smith wrote:
Zeev Suraski wrote:
I actually don't recall there was consensus on even adding this
feature in the Paris meeting, let alone how to name it.
To quote the meeting results as linked in Mike's original post:
1. We re-use the "static::" keyword to do run
Jochem Maas wrote:
rather than an alternative form of static method calling or a new class
related keyword, maybe a new magic constant would be sufficient? e.g.
__CCLASS__ (C for 'Called')
or
__OWNER__ (the class the 'owns' the method? [from the view point of
the caller])
i dont re
Zeev Suraski wrote:
At 16:50 01/03/2006, Lukas Smith wrote:
Dmitry Stogov wrote:
1) I would very like to see some real example where "static" is
necessary?
I think Mike illustrated this in his post. Or do you want a "real"
world example?
2) "static" is really bad name. I suggest "calle
Zeev Suraski wrote:
I actually don't recall there was consensus on even adding this feature
in the Paris meeting, let alone how to name it.
To quote the meeting results as linked in Mike's original post:
1. We re-use the "static::" keyword to do runtime evaluation of statics.
2. Marcus
At 16:50 01/03/2006, Lukas Smith wrote:
Dmitry Stogov wrote:
1) I would very like to see some real example where "static" is necessary?
I think Mike illustrated this in his post. Or do you want a "real"
world example?
2) "static" is really bad name. I suggest "caller", Marcus thought about
Dmitry Stogov wrote:
Yes I like not a sintetic test but real life example (singleton, factory or
something else).
(I tried to write generic singleton but it wasn't exelent.)
Yeah a singleton method that calls a factory method is a prime example.
Now if you want to inherit that class you will
> -Original Message-
> From: Lukas Smith [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, March 01, 2006 5:50 PM
> To: internals@lists.php.net
> Subject: Re: [PHP-DEV] [PATCH] Late Static Binding
>
>
> Dmitry Stogov wrote:
> > 1) I would very like to see some
Dmitry Stogov wrote:
1) I would very like to see some real example where "static" is necessary?
I think Mike illustrated this in his post. Or do you want a "real" world
example?
2) "static" is really bad name. I suggest "caller", Marcus thought about
"class".
I dont really see an issue wi
"caller_scope" in execute_data.
Thanks. Dmitry.
> -Original Message-
> From: Marcus Boerger [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, March 01, 2006 4:21 PM
> To: Dmitry Stogov
> Cc: 'PHP-DEV'; 'Mike Lively'; Andi Gutmans
> Subject:
: Wednesday, March 01, 2006 3:03 PM
>> To: Dmitry Stogov
>> Cc: 'PHP-DEV'; 'Mike Lively'
>> Subject: Re: [PHP-DEV] [PATCH] Late Static Binding
>>
>>
>> Hello Dmitry,
>>
>> of course, what hinders you?
>> See original mail fro
me.
Because "self" behave more 'static' (and proper).
Thanks. Dmitry.
> -Original Message-
> From: Marcus Boerger [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, March 01, 2006 3:03 PM
> To: Dmitry Stogov
> Cc: 'PHP-DEV'; 'Mike Lively'
o:[EMAIL PROTECTED]
>> Sent: Wednesday, March 01, 2006 1:01 PM
>> To: PHP-DEV
>> Cc: Andi Gutmans; Mike Lively
>> Subject: Re: [PHP-DEV] [PATCH] Late Static Binding
>>
>>
>> Hello internals,
>>
>>it looks like either nobody objects or nob
Can I look into patch?
Dmitry.
> -Original Message-
> From: Marcus Boerger [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, March 01, 2006 1:01 PM
> To: PHP-DEV
> Cc: Andi Gutmans; Mike Lively
> Subject: Re: [PHP-DEV] [PATCH] Late Static Binding
>
>
> Hello
Hello internals,
it looks like either nobody objects or nobody has interest. Either way
i tested the patch and worked helped it a bit and it looks good, doesn't
affect anything else and doesn't show a single problem in valgrind. So If
noone objects i will commit this next week.
regards
marcus
I have finished a patch that implements a working version of late static
binding.
I used the notes from the Paris PDM as my guidelines for implementation.
(http://www.php.net/~derick/meeting-notes.html#late-static-binding-using-this-without-or-perhaps-with-a-different-name)
As requested in the no
58 matches
Mail list logo