> Why was it decided to not raise a syntax error...
I'm not sure if such a decision was even ever made, the error happens before normalization is applied. I.e. the parser is doing two things here: (1) validating the syntax against the grammar and (2) building the AST. Normalization happens after (1), and `๐๐ฃ๐ฆ๐ = 0` is valid syntax because the grammar is NOT defined in terms of normalized identifiers, it's describing the valid (but confusing!) assignment that Carl described.
I agree that this doesn't seem like bug, but it IS my new favorite quirk of identifier normalization.