The main reason to start kids off with foreign languages early is that this increases the likelihood they will achieve fluency in adulthood. That is to say that they will have far more years to perfect their skills and it will seem perfectly normal to speak bilingually. For example, in countries such as Holland and Norway where English is taught from a very young age, more than 95% of adults speak it at an advanced level. Learning a second language also helps to improve overall cognitive abilities. In other words it benefits the overall development of a child’s brain. A recent survey by Cambridge University found that children who studied a new language before the age of 5 were significantly more likely to score higher in Mathematics and Science.
A: Perhaps, they should have done less and the support would have been better. In the CPython reference implementation, the internal string representation was changed. The UTF-16 was replaced by one of three possible encodings (ISO-8859-1, UCS-2 or UCS-4) depending on the actual string content. To add a single non-ASCII or non-BMP character, the entire string will often be implicitly converted to a different encoding. The internal encoding is transparent to the script. This design is meant to optimize the performance of indexing operations on Unicode code points. However, we argue that counting or indexing code points should not be important for the majority of uses—compared, for instance, to grapheme clusters. To our knowledge, Python currently provides no support of the latter.