On 12/1/05, Matt Diephouse <[EMAIL PROTECTED]> wrote:
> After many months and lots of work, I'm happy to present you with the
> latest namespace spec draft. Comments are most welcome: to quote Chip,
> "The rest of the discussion would benefit from more eyes."
>
yay! your hard work shows... this was worth waiting for. i'm going to
be like everyone else and say this will take some time to digest, but
i have a question now.

>   Naming Conventions
>     For interoperability, languages should use hierarchical namespaces.
>     There's no way to outlaw flat namespaces, of course, and that remains an
>     option for language implementors, but a standard must be chosen for easy
>     interoperability, and hierarchical seems to be the better choice.
>
>     HLL Private Namespaces
>         HLLs should use a namespace with an underscore and the lowercased
>         name of the HLL to store any private items. For instance, Tcl should
>         use the "_tcl" namespace to store the subroutines that make up the
>         compiler.
>
i don't understand the reason for lowercasing in namespaces. i mean,
won't there be collisions if someone creates a PERL compiler? perhaps
you could elaborate on this point a bit.

>     User Defined Namespaces
>         All HLLs should prefix any namespaces with the lowercased name of
>         the HLL (so there's no question of what to capitalize). So Perl 5's
>         CGI module should be stored under perl5::CGI. This eliminates any
>         accidental collisions between languages.
>
why would there be a question of capitalization if the HLL name is
used as is, instead of lowercased? (e.g. Perl5::CGI.) or, in the case
of my example above, PERL::CGI and Perl::CGI. i understand it looks
like there won't be a Perl namespace, but one for each version, but
i'm sure you get the point. maybe i don't understand who (or what) is
responsible for doing the capitalization.

~jerry

Reply via email to