4 ms·
I am not a Rust fan by any mean, but it feels like this rant is not completely informed. Things like: > Just give me a garbage collector, and let me do what I
by palata 2y ago
I am not a Rust fan by any mean, but it feels like this rant is not completely informed. Things like:
> Just give me a garbage collector, and let me do what I want to do!
and
> But when compared with other languages (like Go), its “safety” to me is more of a detriment.
Sound like the author is not exactly clear about what "memory safety" is. Many languages are memory safe. The difference is that Rust aims for memory safety at zero (in practice "very low") cost. If garbage collected languages could do that without sacrificing their simplicity, they would do it.
It's a tradeoff. If Kotlin is fine for you in terms of performances, then use it! Rust is rather an alternative for C/C++, where performance matters. Feel free to use Rust wherever you want if you love it, but don't use it when performance does not matter if you hate it!
- qarl 2y agoYeah, > Just give me a garbage collector, and let me do what I want to do! That line pretty much perfectly shows the author doesn't know what he's talking about. Note to the author: Rust is specifically made for situations where you can't use a garbage collector.
- dehrmann 2y agoThe problem is Rust's marketing. They sell the language too well for use cases that don't need the same degree of safety or speed, and Java (or Go, or C#) would be the more pragmatic choice. If you find yourself writing an OS or browser, Rust is a great choice. Basically anything where C++ is the alternative.
- Fire-Dragon-DoL 2y agoI have a vague hunch where Rust is chosen because of the good quality abstraction the language support that's missing from modern languages. I keep joking about it, but immutability is si valuable for general software development. None of the mainstream languages support that, but Rust achieves the same benefits (even if in a different way). Then the Rust type system is sound while modern languages are still dealing with problematic nulls and lack of advanced types (like what's possible with typescript)
- jvanderbot 2y ago100%. My fear is that the backlash spreads the way the hype did (about rust being best for everything) did, and suddenly rust is the choice for nothing. My experiences are very positive, but I work mostly in the narrow-ish cases that Rust is designed for, in C, C++, systems areas.
- palata 2y ago> My deepest fear is that the backlash spreads the way the hype did (about rust being best for everything) did, and suddenly rust is the choice for nothing. I could totally imagine its popularity going down in places where garbage-collected languages are fine, but... don't you think it has a future in those places where C/C++ are needed (e.g. systems areas, as you mentioned). For Rust to lose everywhere would require C++ to win against Rust. Not sure if that's possible.
- jvanderbot 2y agoI think the dip will be deeper than people anticipate. Back to very niche cases. The fact that Linux & Windows is pulling more and more Rust (albeit cautiously), I think secures its future as a C/C++ augmentation for systemsy stuff. The big C/C++ domains haven't really adopted it like I'd hope they would before that dip: Automotive, Aerospace, Robotics, Desktop, Embedded. It's quite perfect for some of those, but they're fighting incumbents without an eccosystem to back them so that will take a long time. It's not like rewriting sudo or ls, you have to rewrite everything to move from a C RTOS to something like a Rust embedded HAL.
- shrimp_emoji 2y agoI mean dawg Rust doesn't even have a standard yet. C and C++ (and Ada! any memory safety fans remember Ada??) have ISO-certified standards.
- analognoise 2y agoAda has a full formally specified language, methodology and tooling, too: SPARK https://www.adacore.com/about-spark https://www.adacore.com/about-spark I've always wondered why Ada didn't get more interest.
- deepsun 2y agoExactly. So was Go in it's time. Their marketing sounded like everyone else did garbage collection wrong, and that their approach is best for all use cases and niches.