> Le 15 mars 2025 à 12:53, Rowan Tommins [IMSoP] <imsop....@rwec.co.uk> a écrit 
> :
> 
> 
> 
> On 14 March 2025 23:37:08 GMT, Rob Landers <rob@bottled.codes> wrote:
>> I could get behind `::`, but I feel that it introduces human ambiguity. I 
>> don't believe it would introduce compiler ambiguity, but as a human, I have 
>> to hope the programmers are using a style that makes it obvious what are 
>> inner classes and what are constants/methods.
> 
> As far as I can see, all four languages I looked up last night (Java, C#, 
> Swift, Kotlin) use the same syntax for accessing a nested type as for 
> accessing a property or method, so we'd be following the crowd to use "::"
> 
> That said, I think they all also use that same syntax for namespace (or 
> equivalent) lookups, so the same argument can be made for "\". (Why PHP 
> separates those isn't entirely clear to me.)
> 

According to my archeological research, it was originally designed to reuse 
`::` as namespace separator, but it was finally changed to something else due 
to ambiguity between static class elements and namespaced functions/constants. 
See https://wiki.php.net/rfc/namespaceissues and 
https://wiki.php.net/rfc/backslashnamespaces (where `::` is assumed to be the 
namespace separator).

—Claude

Reply via email to