In rust you can use Unicode characters for variable names, but only in the Unicode Standard Annex #31 (aka UAX#31). Basically just "character-like" and "numeric-like" symbols. You can use Cyrillic, Chinese, etc, but no emoji. (well, it does have a special error message if you try to use the crab emoji) Now it's also how Python works. The PEP 3131 explains the decision, worth a look, gives a rundown of upsides and downsides, plus it's short. Python PEP 3131: https://peps.python.org/pep-3131/ Rust reference: https://doc.rust-lang.org/reference/identifiers.html Annex #31: https://www.unicode.org/reports/tr31/tr31-37.html