4 ms·
Rust – Zero Cost
- wahern 12y agoHere's the problem with Rust, hopefully temporary: from the moment it came out it's been touted as having a bounty of great features--speed, safety, ease of generic programming, etc. The story hasn't changed one bit. However, the language syntax and implementation have changed dramatically. So, was it hype in the beginning? Why should I trust it now?
- kibwen 12y agoHere's what you must understand: for years, Rust has been a research project on the usability of memory-safe systems programming methods. Though the message has remained the same, the means used to achieve that message have evolved drastically. Furthermore, the actual truth of that message has gone from hopeful fiction to practical reality. Specifically, having real, large codebases written in the language (Servo and the compiler itself) as well as an ever-expanding ecosystem of libraries has allowed the developers and the community to determine what approaches work best and should be emphasized. Abstractions and tools that are little-used are torn out or redesigned, while features that play to the language's strengths are given greater prominence. Modern Rust is actually a much lower-level language than pre-0.1 Rust (circa 2011), which, back then, conceptually resembled Go (via convergent evolution). To answer your questions directly: 1. Yes, it was hype (or rather, naive optimism) in the beginning to believe that a memory-safe language could be compete with or exceed C++ in performance while also offering modern language features (without the menagerie of gotchas that accompany those features in C++). Thankfully, as the result of much iteration, it seems as though our optimism was not unfounded, and that such things really are possible. 2. You don't need to trust it now. The community is exploding all on its own, and I suspect that its growth is still limited by the fact that we're pre-1.0. Once the stable 1.0 release hits and a dependable library ecosystem coalesces, then evaluate the language and those using it to determine whether or not it's a language worth placing your trust in. Let it speak for itself!