• 0 Posts
  • 7 Comments
Joined 1 year ago
cake
Cake day: June 3rd, 2023

help-circle




  • I’d say no. Programming safely requires non-trivial transformation in code and a radical change in style, which afaik cannot be easily done automated.

    Do you think that there’s any chance to convert from this to this? It requires understanding of the algorithm and a thorough rewrite. Automated tools can only generate the former one because it must not change C’s crooked semantics.



  • This reminds me of a similar experience.

    The first release of WSL(2) 1.0 (this versioning alone is worth another post here, but let’s not talk about it) have its CLI --help message machine translated in some languages.
    That’s already evil enough, but the real problem is that they’ve blindly fed the whole message into the translator, so every line and word is translated, including the command’s flag names.

    So if you’re Chinese, Japanese or French, you will have to guess what’s the corresponding flag names in English in order to get anything working.
    And as I’ve said it’s machine translated so every word is. darn. inaccurate. How am I supposed to know that “–分布” is actually “–distribution”? It’s “发行版” in Chinese and “ディストリビューション” in Japanese.

    At last I had to switch my system language to English to set a WSL instance up. From then on I never use any display language other than English for Microsoft products. Sometimes “translated” is worse than raw text in its original language.

    Related links if you like to see people suffer:
    https://github.com/microsoft/WSL/issues/7868
    https://github.com/microsoft/WSL/issues/4111

    PS: for the original post, my stance is “please don’t make your software interface different for different languages”. It’s the exact opposite of the author has claimed: it breaks the already formed connection by making people’s commands different.
    It’s the CLI equivalence of scrambling every button to make sure they are placed differently in different languages in GUI. I hope this sounds stupid enough so that no one will try it.
    A not-so-stupid way that I can think of is to add a “translation” subcommand to the app that given any supported flags in any language it converts them to the user’s language. Which is still not so useful and is not any better than a properly translated documentation, anyway.