3 ms·
> Rust is a systems programming language. While Rust is a systems programming language, it has a very advanced Traits system. This makes it, in my opinion, mor
by csomar 6y ago
> Rust is a systems programming language.
While Rust is a systems programming language, it has a very advanced Traits system. This makes it, in my opinion, more powerful than your average scripting language (Python, JavaScript, etc...) I have recently used Rust for something that I should have, normally, used JavaScript or Python for. Based on my experience, I probably gained in development time because I didn't do much debugging. Rust code just works, it's simply amazing.
> Complexity
One way to approach this, is to actually enjoy this complexity because there is real theoretical computer science behind it. It's not complexity for its own sake.
> Compile Times
This one is really annoying even with a powerful processor.
> Maturity
I'd argue that since many high profile companies like Facebook, Google and Microsoft used Rust to start new projects (like Libra, Fuchsia); Rust is stable enough to be used in a production capacity. You'll probably benefit more if the project is new and thus have less time dealing with C compatibility.
- millstone 6y agoTraits do not make Rust more powerful than your average scripting language. They are much less powerful. The biggest hole here is the complete absence of any dynamicism. Rust types do not have any real runtime presence. Concretely, there is no way to dynamically check whether this value implements some Trait. This is used in Golang (Copy -> WriterTo) but is impossible in Rust without manual implementation.
- higerordermap 6y agoThe cognitive overhead of rust is more than prototyping oriented langauges. It is not because of dynamism but the need to think about details. That's natural for the intended domain of rust. (Robust system programming). But rust might suffer due to scope creep because someone felt the need to teach rust to all ruby rail / javascript webshits.
- LoveHateRust 6y agoRust's typesystem really makes it a great fit for business applications. Totally agree. Kotlin comes close, though. Rust itself is production ready, but not the ecosystem.
- pron 6y ago> One way to approach this, is to actually enjoy this complexity because there is real theoretical computer science behind it. It's not complexity for its own sake. Some people enjoy complex languages and some don't, and while the complexity in Rust does serve a purpose -- supporting the borrowing system and a design philosophy that is similar to C++'s -- there is "real theoretical computer science" behind any language design. The theory doesn't tell us which approach is good and which is bad, just what properties a language has. Some designs, usually on the more complex end, lead to many properties that are of interest to people who study those properties, and so there is some correlation between people interested in studying formal systems and people who prefer complex languages.