5 ms·
Non ASCII is a mistake, the only reason for it are humans that don't want to learn English. English IS humanity's final language, so I'm going back to ASCII so
by bullen 5y ago
Non ASCII is a mistake, the only reason for it are humans that don't want to learn English.
English IS humanity's final language, so I'm going back to ASCII so I can use a simple char* for all my strings.
- legulere 5y agoLike Latin and then French was? Chinese could very well become the next Lingua Franca.
- robin_reala 5y agoOn the fragile assumption that this isn’t a lazy troll, the words naïve, façade, fiancée, and coöperative are all in English. And that’s ignoring extremely common English symbols like £ and — that aren’t part of ASCII, and come to think of it the “’” in “aren’t”. And, hell, I guess that even after English becomes the world language, you’ll still want to spell people and place names correctly?
- JadeNB 5y ago> And, hell, I guess that even after English becomes the world language, you’ll still want to spell people and place names correctly? I suspect that anyone who believes that English is the final language (how can it be anything other than a lazy troll?) probably believes that dropping diacritics and otherwise mangling the glyphs of other alphabets is spelling them 'correctly'.
- account42 5y ago> coöperative Not that I agree with going back to ASCII, but cooperative is already the dominant spelling by a wide margin to the point where using coöperative comes off as pretentious.
- robin_reala 5y agoYeah, to be fair I was scraping to find another much-used example of a diaresis. But it’s house style for the New Yorker at least.
- kergonath 5y agoComing off as pretentious does not make it incorrect, and it is not the business of people writing software to decide what is correct or not.
- shakna 5y agoPor que? Ne comprends pas. Sprache ist überall. Yīngyǔ jīhū méiyǒu zhǔdǎo.
- thriftwy 5y agoThere's an option of making char 64-bit, in which case you can always use char* So that sizeof(int) = sizeof(float) = sizeof(char) = 1
- selfhoster11 5y agoThat's how we ended up with UTF-16, the abomination from Microsoft. UTF-8 or bust.
- AnIdiotOnTheNet 5y agoMicrosoft did not invent UTF-16 (which in fact is just a retcon of UCS2), they were just early adopters of Unicode and UTF-8 didn't exist yet.
- selfhoster11 5y agoThey might not have invented it, but they popularised it. UTF-16 would be dead and a footnote in history if it hadn't been for Microsoft's adoption of it.
- fomine3 5y agoUTF-8 is appeared a bit late at the time Unicode being adopted initially. So WinNT and other projects like Java also adopts UCS-2.
- account42 5y ago1. sizeof(int) and sizeof(float) are both 32-bit on most current systems 2. Unicode is (currently) only 21-bit. 3. UCS-4 (aka 32-bit char) rarely helps because in most cases you either a) don't really care about characters (most software) and can use substrings as well or b) code points are an insufficient grouping and you need variable length units anyway for grapheme clusers (text rendering and editing).
- thriftwy 5y ago
- selfhoster11 5y agoEnglish is as much an eternal Lingua Franca for human-readable communications as C is for low-level high-performance programming: meaning that it isn't one at all. Both can be unseated with some effort. C is already being slowly unseated by Rust, and there are more competitors like Zig on the way. English may or may not be unseated by Mandarin, given that American hegemony is waning, and (unfortunately) Chinese dominance on the global stage is rising.
- account42 5y agoGood news is that you can use char* for UTF-8, which is an ASCII superset, and many operations such as splitting on an ASCII character work just fine with UTF-8 strings without any code changes.