Lua is 100% ANSI C but! Its lexing of numbers assumes that the decimal separator character is a single byte. The C standard is ambiguous: the decimal separator is defined as a `const char *` and "cannot be the empty string" but the text says "decimal separator character" (singular), but a single character can be multiple bytes in a multibyte locale.

Are there any such locales? No. No there are not.

But there COULD be.

This is obviously Very Import Information.

#lua #programming

@rk s/COULD be/is/. U+066B, ARABIC DECIMAL SEPARATOR

Edited: This is not a new character; it's been in Unicode since Unicode 1.1, meaning essentially forever.