Damian (>>>), Moritz (>>), Smylers (>):
>> > ... why hidden_from_backtrace instead of hidden-from-backtrace?
>>
>> ... low-level things are spelled with underscores, while we reserve
>> the minus character for user-space code.
>
> So the idea is that if Perl 6 has an identifier zapeth_clunk itself that
> leaves zapeth-clunk free to be used by developers to mean something
> else?

Not much of a problem in Perl 6 in the first place; built-ins from the
setting are considered to be lexical declarations from a block outside
of the mainline program code, and any declarations made by the
developer will just shadow these.

No, my understanding is that the naming convention is there to
separate stuff API stuff from internals stuff:

  dashes
    this is part of the Perl 6 API -- feel free to call it
  underscores
    this is an internal function -- unless you're doing something
internal yourself, you shouldn't call it

To me, it has a nice visual mnemonic, since underscores themselves are
more "low-level".

Of course, it remains to be seen whether this convention is (a)
useful, (b) correctly guessing the boundaries between API and
low-level, or even (c) consistently applied within the spec.

Damian (>>>), Patrick (>>), Smylers (>):
>> > I'd like there to be a more consistent approach than that
>>
>> +1 to consistency.
>
> Could we have underscores and hyphens mean the same thing? That is, Perl
> 6 always interprets illo-figut and illo_figut as being the same
> identifier (both for its own identifiers and those minted in programs),
> with programmers able to use either separator on a whim?
>
> That would seem to be the most human-friendly approach.

Maybe, but in my humble opinion that wouldn't promote consistency in
user code. Also, the name mangling needed to do this would waterbed up
*somewhere* and likely cause new, interesting kinds of pain.

// Carl

Reply via email to