% unicode -d పే
U+0C2A 'ప' telugu letter pa
U+0C47 'ే' telugu vowel sign ee
% unicode -U C2A C47
U+0C2A 'ప' TELUGU LETTER PA
category: Lo
canonical combining classes: 0
bidirectional category: L
mirrored: N
U+0C47 'ే' TELUGU VOWEL SIGN EE
category: Mn
canonical combining classes: 0
bidirectional category: NSM
mirrored: N
%
The problem is the second code point, U+0C47, Telugu vowel sign EE. It is not in the letter class. If I change your program to use just the first code point, it works: https://play.golang.com/p/eNvuZH33s65
The rules for identifiers in Go were chosen because they are easy to implement, but they do have the problem that they do not treat all languages equally. They may expand one day, but at the moment this is the situation.
There are a number of open issues around this. Start with https://github.com/golang/go/issues/20706 if you want to read more.
-rob
--
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/20221106105154.xkoemtt6tx25flam%40carbon.
On Nov 6, 2022, at 4:02 AM, Rob Pike <r...@golang.org> wrote:
To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CAOXNBZS085qwY5tXj%3Di5MeBguXeemHYBmSzjZks--MNmALohcg%40mail.gmail.com.