The UK only tried to introduce it after they knew they couldn’t hold on to Hong Kong anymore. So they did it out of spite.
But the UK did try to convince Portugal not to offer the people of Macau citizenship, because they didn’t want to do the same for the people of Hong Kong.
China has a lot of vague laws and a history of making up accusations to fit the occasion, with no way for HK judges to examine evidence, and trial with presumption of guilt. This excellent comment on reddit by IosueYu answers the question better than I ever could: https://www.reddit.com/r/HongKong/comments/bvux0z/hong_kong_...
But people elect the parliament and the parliament electthe PM, so it's OK, there's a chain of accountability to the populace. In HK, the parliament has only 70 seats of the 1200-member committee, and only 35 of those are geographical constituents representing the people, the rest are "functional" constituencies mostly representing businesses). Laws have to be passed by a majority of the LegCo however, and the Chief Executive can be impeached by a 2/3 majority in the LegCo, so the LegCo is still very important. The main tragedy is that only 50% of the LegCo is elected democratically.
One interesting - and HN-relevant! - point is that the current member of HK's parliament representing 'Information Technology' is one of the leaders of the pro-democracy camp, and there was a semi-viral video this week of him confronting police inside the parliament building. He is one of the few pro-democracy members among the functional constituencies, and as a Hong Kong permanent resident and IT professional, I want to make sure I get the papers sorted to vote for him in the next elections...
When I started learning Mandarin (my fourth language) I became totally unable to speak French (my third language) as the Mandarin words would pop up first in my mind. I think by now they've been sufficiently separated in my mind but I haven't had any use for my French so it as atrophied anyway. I'm now learning Cantonese which is similar to Mandarin and I'm only occasionally mixing it up with Mandarin. It seems to me the distance between languages isn't so important, you can mix up any two languages or not. It probably depends more on how much your brain has to rewire itself to acconmmodate the new language?
Actually those are very bad examples. In practice, compilers will produce warnings in all of those examples.
Better examples (of actually useful things) would be things like designated initializers, struct literals, declaring array lengths in args using static, etc.
Yeah and it also allows addressing beyond 2GB. I've been using DirectByteBuffers for the sake of being compatible with Android which I think doesn't give you access to the Unsafe API probably. I'll see if I can add a compiler option to use Unsafe for the JVMs that have it in the future. That'll probably do wonders for performance since Unsafe APIs are intrinsics. Unsafe is currently used in the Eta RTS for atomic CAS operations (which should be compatible in Android) on some of the RTS data types.