On Fri, Sep 15, 2006 at 03:27:40PM -0700, Darren Duncan wrote: : As I recall, we're allowed to put absolutely any characters we want : in an identifier if it is a delimited identifier rather than a : bareword identifier.
I have no clue what you mean by 'delimited identifier'. Are you referring to the section of S02/Names that allows symbols like the following? $::{'[EMAIL PROTECTED]@'} ::{'[EMAIL PROTECTED]@'} : That said, it isn't yet clear to me what the general rules for : delimited identifiers are as contrasted with literal strings, and in : particular, whether any leading sigil is supposed to go inside or : outside of the delimiters. As the above illustrates, you can simply use literal strings as the subscript, so there is no difference. And the sigil may go either place. Which means it's not easy to have a package name starting with a sigil. I don't consider this a big restriction. Alternately we could recognize ::{'::[EMAIL PROTECTED]@'} in which case it's difficult to have a package name starting with '::'. That's probably a feature... But in any case I would call these names or symbols, not identifiers. Most people reserve "identifier" to mean a particular sort of symbol that looks roughly alphanumeric to the lexer. Larry