On Thu, Jun 19, 2008 at 8:44 AM, Andi Gutmans <[EMAIL PROTECTED]> wrote: >> >> - In PHP 5, object storage is resources done right. I don't think >> >> we should be using the resource infrastructure for this >> >> implementation and would prefer to use the object one. It's better. >> >> I suggest to take a look at it. >> >> Hmm, seems like a good idea. If nobody objects in the next few days, >> I'll rewrite my patch to use objects instead of resources. What class >> name do you suggest? > > Great. I think Closure is probably a good name. > [Btw, if we want to get fancy we could even have a __toString() method on > those which would print out information about the Closure. But this is not a > must, just something which eventually could be nice for debugging purposes...] >
Using objects, instead of resources is an excellent idea. Would it be possible to introduce a general __invoke (Or whatever name is more fitting) magic-method, so that whichever object implements that method, is callable with call_user_func (and directly through variable-function-syntax). Eg.: class Foo { function __invoke($thing) { echo "Foo: " . $thing; } } $foo = new Foo(); $foo("bar"); // > echoes "Foo: bar" I'm not sure how this would play together with lexical scope? -- troels -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php