5 ms·
Rust and Go are not similar or competing. They are both new, but aside from that the differences are huge. So if a project uses one, that doesn't mean the other
by azakai 14y ago
Rust and Go are not similar or competing. They are both new, but aside from that the differences are huge. So if a project uses one, that doesn't mean the other was a possibility for that project too.
- DASD 14y agoIndeed they are not similar but wildly different tools are often used in a similar or competing use cases(eg. the blog's post of the company using Ruby and conversion to Go). I had asked because if you were to reverse the usage do you think Google is likely using much Rust since it is developing Go? Just to clarify, I see a bright future for both languages.
- tmzt 14y agoIt would be interesting to see Rust used in Android in some of the parts that are now C or C++.
- steveklabnik 14y agoThe Rust team agrees: https://github.com/mozilla/rust/wiki/Doc-language-FAQ https://github.com/mozilla/rust/wiki/Doc-language-FAQ (control-f for 'this Google language')
- stcredzero 14y ago> Rust and Go are not similar or competing. Rust is more "kitchen sink" (done as elegantly and cleanly as possible) and Go is more minimalist.
- pcwalton 14y agoBeing "kitchen sink" isn't a design goal of Rust. Rather, Rust is a lower-level, safer language. Go is higher-level. Rust strives to be as minimalist as possible without sacrificing the goals of low-level control over memory and C++ performance (optional GC), memory safety, race-free concurrency, and type safety (no null pointers).
- duaneb 14y agoI don't think he meant kitchen sink, more that there are fundamental aspects from many parts of languages that are bound together well, which makes > Rust strives to be as minimalist as possible without sacrificing the goals of low-level control over memory and C++ performance (optional GC), memory safety, race-free concurrency, and type safety (no null pointers). somewhat funny.
- jbooth 14y agoThey're not similar at all, but both were designed to replace C++. That sort of means that they're competing for the use-case of "things I would write in C++ if it wasn't a god-awful nightmare to do so". From there, though, you're right that they take very, very different approaches.
- azakai 14y ago> They're not similar at all, but both were designed to replace C++. In practice, the main use for Go appears to be like this story - an alternative to RoR, Node, Python/Django, etc. - and not a C++ alternative. Go and Rust may both start from the idea of doing C++ or something similar "right", but end up in very different places.
- coldtea 14y ago>They're not similar at all, but both were designed to replace C++. Well, Rust WAS designed to replace C++, both in the intention behind its design and the way it was done. Go designers had this vague intention of "replacing C++", but the way they have designed the language they only really replace Java or some scripting language. Which they admit (the get mostly Python etc converts than C/C++ converts).
- laut 14y agoGo is from 2009. Ruby is from 1995. Although it took about 10 years for Ruby to really start to be popular in the English speaking world.
- gnuvince 14y agoRust, not Ruby.
- Symmetry 14y agoThe way I would put it is that Go was designed to incorporate some of the simplicity and speed of C as well as the ease of use of Python, while Rust was designed to combine the speed and flexibility of C++ with the safety of Haskell.
- steveklabnik 14y ago... and the concurrency of Erlang. (and OCaml might be more apt than Haskell).