• 0 Posts
  • 190 Comments
Joined 2 years ago
cake
Cake day: September 7th, 2023

help-circle
  • It’s very hard to get a good look at which arguments are good or not without having the experience to evaluate them.

    Here’s my view on Rust vs C or C++. Rust is a stricter language which makes it easier to code with low run-time errors, which is great for writing large scale projects. Now the problem with this is that you can write C++ to also be strict but it’s a lot more verbose than the standard approach, so most developers don’t. This causes disagreement among Rustaceans and C/C++'ers. The C++'ers are correct that you can replicate anything in Rust in C++. A correct program is a correct program regardless of the language it’s written in. Rustaceans also oversell when it comes to program correctness, tons of Rust programs have errors; Rust can help minimize errors but it’s not a silver bullet. Rewriting-in-Rust for an already good program is a fools errand; the outcome will probably be a worse program. However Rustaceans are correct in pointing out that the C++ written programs tend to have more errors, it’s just not the rule they pretend it is.

    In summary, Rust is a great language but Rustaceans oversell it. Many of it’s apparent advantages can be mitigated by good development practice. It’s just that good practices are difficult and uncommon.

    (Note that there are also 3-rd party tools like static analysers, which can help developers detect errors. So again Rust is better out of the box, but ultimately you can get the same outcome with some work).



  • “Take them at their word”

    Who? Has there been a survey of contributors?

    “Genuinely think that coreutils would be better if it were written in Rust”

    I feel like the skill-level of the contributors is high enough that they would not be so naive.

    Programs in different languages can compile to the same machine code. Any advantage would be in language constructs. But if you already have an existing C implementation what advantage do you do from a Rust implementation?

    I personally write in 3 languages: Rust, C++, and Fortran ( or rarely SPARK). I don’t port my code across languages, because there is no advantage. If I wanted it better, I would work on my existing codebase.

    Porting really only helps if the original language was hindering development, deployment or runtime. These arguments don’t really hold with C, a fast, low-dependency language that is more widely used than Rust.


  • Being written in Rust has mixed effects. Rust is still less mainstream than C, so fewer people can contribute. However, it does attract more interest because it’s different.

    However, the reasons why you create/contribute to new-but-similar projects is to add functionality that the original project doesn’t have. By nature a coreutils replacement has to behave like coreutils or else it will break many configurations. This severely limits the functionality you can provide. So why are people (and Canonical) contributing so much labor to something that still doesn’t function as intended?

    I say it’s the licensing. I say this as someone who regularly gets requests to change the licensing of my software (more than any feature request). I think licensing is a big deal, and most software devs recognize that.







  • No, I pointing out that the filters don’t actually work.

    Transphobic and racist behaviour isn’t going to disappear just because you boycott it.

    The consequences of bigotry aren’t reading mean tweets, it’s going to a job interview and having the prospective employer think “eww… I don’t like this candidate”. Boycotting is not going to fix that, because your purity test can’t even detect it.

    I don’t purity test people because the reality is that most/all people have some harmful notions, it’s not productive or good for anyone to ostracize them so long as we can promote the good they do, and mitigate the harm.


  • Let’s not confuse “entitled” with “justified”. Of course you are legally entitled to boycott whatever you want, nobody seems to question that. The issue is whether or not you can be legitimately criticism for it.

    Suppose that you had 20 glasses, you tested 4 of them and found that 2 were “too acidic”. Are you then justified in drinking the other 18 glasses?

    The reality is that you have probably personally supported people who are far more egregious than the subjects here. Abusers, murderers, rapists, etc… Is your support of them an endorsement of their actions? Is your/societies providing medical care to these people an endorsement of their actions?

    No. We can parse between what actions we endorse and what actions we don’t, because we are rational beings. Or rather some of us are.