Re: Re: PHP 5.1 (Or How to break tousands of apps outthere)
| From: | Sara Golemon | Date: | Mon, 28 Nov 2005 21:06:40 +0000 |
| Subject: | Re: Re: PHP 5.1 (Or How to break tousands of apps outthere) | ||
| References: | 1 2 3 4 5 6 7 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-20779@lists.php.net to get a copy of this message | ||
> I thought that was the whole point of namespaces. That you can include
> stuff without worries that things will conflict:
>
> namespace name1 {
> define("CONSTANT", "Hello world.");
> }
>
> namespace name2 {
> define("CONSTANT", "Hello mars.");
> }
>
> Would produce seporate constants because they're defined in different
> namespaces.
>
The lie in PHP defines is that they are declared at runtime, not compile
time. Noone who has a workable implementation laid out is including
execution of the namespace scope as part of their plan. Can define() be
reimplemented as a mixed runtime/compile-time construct? Yes. But that
creates a whole mess of a pickle.
-Sara