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

help-circle

  • mindlessly chanting “tools”

    That’s what you were doing in the first place. Instead of evaluating and trying new things, you are putting them in an imaginary cycle, ignoring any actual value that they brings.

    Also Rust has been on your “stage 2” for 10 years. It’s now widely used in multiple mainstream operating systems for both components and drivers, driving part of the world’s internet stack, and is used to build many of those “shiny and new tools”.







  • 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.




  • It kinda fills a niche.

    I use fish for simple command pipelines as well. But traditional shells are not as good when I need to do anything “structured”, because they treats almost any value as a string and don’t have anonymous functions. The first problem means that you have to parse a string again and again to do anything useful, the second means that when both pipe and xargs fails you are doomed.
    Nu solves both of the big problems that matters when you want to do rather complex but ad-hoc processing of data. And with a rather principled design, nu is very easy to learn (fish is already way better than something POSIX like bash though).

    Personally another important reason is that I have a Windows machine at work and nushell is much easier than pwsh.

    Btw fish is also going to be a “tool in rust” soon :)









  • 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.