Re: Allow functions in namespaces?

From: Date: Tue, 16 Aug 2005 01:15:31 +0000
Subject: Re: Allow functions in namespaces?
References: 1 2  Groups: php.internals 
Request: Send a blank email to internals+get-18153@lists.php.net to get a copy of this message
I definitely prefer sticking to just classes as I agree this is what most people really need it for (and it wouldn't get us into the trouble we got into when we tried to achieve the holy grail of namespaces). Can you please send me an updated version of the patch to review? At 08:34 AM 8/12/2005 +0200, Marcus Boerger wrote:
Hello Jessie, don't overcomplicate it, just stay with classes. marcus Friday, August 12, 2005, 5:50:08 AM, you wrote: Right now, my patch is complete as respects classes inside namespaces, simple import, namespace imports, etc. I just made a few changes locally to see how feasible it was to allow functions inside namespaces, and it was actually very simple. Like classes, the functions internally are prefixed with the namespace name and a colon, e.g.: <?php namespace test_ns {
    function test_func
    {
        echo "hello!\n";
    }
} test_func(); // generates an error, 'test_func' does not exist test_ns:test_func(); // prints "hello!" ?>> I haven't done anything with functions as regards imports, and I think it would be difficult/useless to do so. Simple imports might be easy, but what about namespace imports? There is no such concept as __autoload for functions, so namespace imports for functions would be discarded. Also, if you import foo:bar, you don't know if this is a function or a class. The former syntax of "import function/class foo from bar" would need to be used, and this syntax was very ugly IMHO. So, I ask, would it be useful to have functions inside namespaces and only use it as above? Imports would only work for classes, and the only change would be that you can reference functions with a colon (of course, just like classes, you cannot declare a function name with a colon, only reference it). Let me know what you guys think. My Beta 2 patch is working great as it is, and I suspect the majority of the users who want namespaces is to simply group/organize their classes anyways. Regards, Jessie Hernandez Best regards, Marcus -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php


« previous php.internals (#18153) next »