this post was submitted on 01 Sep 2025
125 points (97.0% liked)

Programming

22516 readers
160 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] Solemarc@lemmy.world 17 points 4 days ago (4 children)

What honest criticisms did you find in this article? All I saw was;

  • compiling is slow
  • borrow checker is complicated

This isn't new?

[–] floofloof@lemmy.ca 17 points 4 days ago* (last edited 4 days ago) (3 children)

He said the code that came out was slow, but Rust always ranks within the top handful of languages for speed, so I'm taking that comment with a big pinch of salt. Among popular systems languages only C and C++ really beat Rust for speed. So you get better memory safety for the price of a pretty small decrease in speed and a steeper learning curve for the compiler's picky rules (though the compiler gives you lots of clear help). Rust programmers know this.

[–] TheTechnician27@lemmy.world 19 points 4 days ago* (last edited 4 days ago) (1 children)

I'd go even further: the learning curve for Rust is shallower than C/C++.

  • C is obvious: dealing with strings is a goddamn nightmare in pure C, and strings are used all the time in modern programming. Almost no guardrails for memory safety mean that an inexperienced programmer can easily run into undefined, nondeterministic behavior that makes bug hunting difficult.
  • In C++, there's a trillion ways to do anything (which varies enormously based on C++ version), and when you make mistakes of even moderate complexity (not "missing semicolon on line 174"), compilers like gcc spit out a gargantuan wall of errors that you need to know how to parse through.
  • Rust, in my experience, gives you a much clearer "good" way to do something with some room for expression, and its compiler tells you exactly what you did wrong and even how to resolve it.

The fact that the compiler actually guides you, to me, made learning it much easier than C/C++.

[–] tetrislife@leminal.space -3 points 4 days ago

By the vague looks of it, he has tried Rust for something he would use C for. His impression of Rust's utility in that domain seems unsurprising.

Beyond that


I used to not question why we build anything other than "system software" in C/C++. Once I questioned that, I quickly got past the "Why not Ada/D/etc." stage and reached the "why is so much of large software written in mid-level languages" stage. For anything bigger than, say, a Unix CLI tool, it probably is, and has always been, wrong to use anything at the level of C (C++, Ada, D, Nim, Rust, Zig, etc.).

This choice of language level for "application software" seems to be a commercial choice. The software commons is using such languages probably because contributors want to hone their job-oriented skills. It got better with Python and Ruby uptake in open projects. But, efficient, safe but simple languages, say, OCaml and Erlang, have been available for decades. Crystal is also looking good right now.

load more comments (1 replies)
load more comments (1 replies)