W
W
WebForYou2020-05-02 12:08:39
go
WebForYou, 2020-05-02 12:08:39

Which tasks are solved in Rust, and which ones in Golang?

Which tasks are solved in Rust, and which ones in Golang? Can one be replaced by another?

Answer the question

In order to leave comments, you need to log in

3 answer(s)
D
Dmitry Belyaev, 2020-05-02
@WebForYou

What tasks are solved in Rust
any. Rust is a general purpose language applicable to most possible tasks. Rust is high-level enough to write application software on it and compiles to sufficiently efficient machine code to be used in OS kernels, drivers or embedded development. Rust also has the smallest size when compiled to wasm, which is critical for use on the web. I honestly don't know of a field that Rust wouldn't fit into.
The only problem I see with the applicability of Rust is its lack of publicity in the Russian Federation, which is often the most important criterion for "managers" and other people making decisions about the stack used.
and which ones are in Golang
Golang is also a general purpose language, but it has a number of limitations:
- Extremely heavy runtime makes it impossible to use it in wasm, embedded or core components.
- The need for garbage collection again limits development for embedded or kernel components.
- Removal of llvm as a compiler backend limits the number of target platforms.
Can one be replaced by another?
Rust quietly replaces Golang in any possible last task, on the contrary, sometimes we have a number of limitations.
Instead of PS:
Golang is likely to be faster for prototyping and a quick start. However, the lack of polymorphism in any form (duck typing does not count) and the limitation to one paradigm of structured programming makes this language extremely expensive to maintain. Also, this (and rapid prototyping and expensive code support) is facilitated by the fierce hatred of the creators of the language for the DRY principle.
Rust has such a rare today strong typing, one of the nuances of which are the concepts of ownership and borrowing (which allow you to do automatic memory management at compile time), which, on the one hand, gives rise to a high threshold for entering the technology (which is smoothed out by human-readable compiler output if the incoming ones can read , which is even rarer today than strong typing), but also reduces the cost of maintaining a product for a long time. You also need to understand that Rust will not save you from the crooked handles of bydlocoders (unless they can master it), since if you really want to, you can make memory leaks and deadlocks and data races (although in Golang it's all much easier to do).
Well, we must not forget that in many places there is hype-driven-development and Golang is promoted, but Rust is not.

R
Roman Mirilaczvili, 2020-05-02
@2ord

Rust is the modern day reincarnation of C++.

What is Rust used for? It is possible to develop device drivers, embedded systems, operating systems, games, web applications, and so much more. The language frequently supports projects aimed at high-security and high-concurrency.

Go is the current reincarnation of Oberon.
https://hackernoon.com/should-i-go-the-pros-and-co...

U
uvelichitel, 2020-05-02
@uvelichitel

In Rust, mozilla writes firefox/servo , and in Go, google writes vitess and dl.google.com

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question