Occasionally, a new version of Unicode comes out, with new characters. This could introduce, for example, new whitespace characters, which may pose a problem for existing programs, for a number of reasons:
- The program may contain a previously unused Unicode character, which now has a meaning which changes how the program is parsed (e.g., it becomes a valid identifier, or a whitespace character). This seems like a small issue since undefined codepoints would likely be an error and thus not included in existing programs
- Programs may expect the whitespace character class, or similar, to only consist of certain characters (which could fail to be the case if the compiler isn't smart enough to downgrade its Unicode version for older programs)
- Programs which can properly handle updates to Unicode classes might want to receive updated Unicode lists without having to be rewritten to be compatible with a newer compiler edition (which would conflict with the previous possible issue). For example, a chat program which is designed not to allow whitespace in account names might fail to do that
What are some ways this could be worked around?