Now rules are locked to english language:
NAME
= first:[$_a-zA-Z] rest:[$_a-zA-Z0-9]* {
return first + rest.join('');
}
NAME_EDGE
= ![$_a-zA-Z0-9]
AFAIK, javascript variables/properties/functions names are not limited to english.
This issue is not critical, because should not happen in real life. But it would be nice to better follow js syntax specifications.