in reply to Syntax Highlighting Editors Beware

in vim, I think you'd just add two more characters to the class of characters allowed in an identifier. I don't think it'll cause much trouble... unlike trying to match m[\s*[blarg]\s*] or m^Gblither^G ...

-Paul

Replies are listed 'Best First'.
Re^2: Syntax Highlighting Editors Beware
by Jenda (Abbot) on Aug 09, 2008 at 13:42 UTC

    $one-two vs. $one-$two? or $one-5? I don't have vim, but does it know identifiers only have $ (or @ or %) at the beginning or does it just have $, @ and % in the class of characters allowed in an identifier? And in the last example, digits are in the group, dash was just added ... so it's all one identifier, right?

    IMHO, it's a bad idea to allow those two, but that's just me.

      The - has to be followed by another letter, so $one-$two is not affected. Likewise $one-5 since 5 is not a letter.

      —John

        Exactly. So adding the dash into the class of characters allowed in identifiers would not work since the digits are in the class as well. So the $one-5 would definitely be colored wrong.

        On the other hand ... I think it's a bad change. In Perl 5 "$three = $one-two;" means "subtract the return value of two() from the value in $one and assign to $three". I bet everyone comming from Perl 5 will expect exactly that in Perl6. And I don't know of any language that would allow dashes in identifiers so I bet others will expect something like that as well. And I do not see any reason whatsoever to allow the dashes in Perl.