Hello community

I am new to Rust but I like the language very much. I feel its a very innovative one especially with lifetimes and ownership rules. However, I do find its flaws. Rust and Golang are about tbe same age yet Golang standard library has more arsenal than Rust (to me nonetheless). I might be totally wrong and if so forgive my ignorance. I find reading and writing XML or Excel files is very tough using Rust compared to what we have in Golang.

Also one of the things I really miss is lack of updated books / tutorials.

Hope to see Rust enter top 10 programming languages in the coming years.

For a programming language that is not even 6 years old, calling a 3 year difference "about the same age" is overstretching the term. In relative terms, Go is 50% older than Rust.

Also please be aware that Rust has smaller team and much less resources. Google >>> Mozilla.

This is interesting. If rust has a smaller team, does it limit the prospects of Rust?

I did not knew that. I thought Rust was made public on 2010 and Go was made public on 2009.

You should be going by the first stable release, which was 2015 for Rust and 2012 for Go.

The unstable phase of a programming language is like pregnancy. Would you compare 1 year old Go in 2013 with unborn Rust and complain, that although Rust has technically existed since 2010, that it hasn't learned to walk, yet? Learning to walk is a metaphor for extending the programming language and standard library. You don't start with that before you're born, so you can't make a comparison before the first stable release.

Rust is stable guaranteed with 1.0.0 since May 15, 2015. Before that, no one actually uses Rust
seriously. Since code could break overnight.

I am by no mean a Rust expert but here are my thoughts.
But please beware that this chat is off-topic. Also Go and Rust has different user target and design philosophy, so this might not be comparable.

The TL/DR is that Rust has a bright future.

Since Rust team has smaller resources than Go team, what Rust has archived is extremely impressive already.
If Rust has more resources, developers could spent time to create/invest more official libraries,
finish long awaited features. And since Rust hasn't, we come to solution is to let the community invest into libraries. Which is volunteer work and often no necessary be thanked/respected. So libraries are increasing, but not very quickly.

Go, in the other hand, has more resources. They use it to make the language more accessible
by investing and incorporating useful libraries with the language. Marketing it (with Google image) to the world. Software shops followed Google success with Go, paid devs to code in Go. This created more Go jobs and more Go devs. Which in turns create more libraries and larger community.

Yes, I could not agree more. Rust has really come a long way. I want to help the community but I am at such an early stage. I will do my best. Hopefully Rust will too follow google path ie. soon there will be more paid devs. Till then, fingers crossed and wishing the community (am me since I am part of it now :slight_smile: ) all the best.

2 Likes

Note that this is unlikely to ever change as far as the standard library goes.

Rust's std is intentionally limited in scope. Functionality related to XML or Excel files is not included not because of a lack of resources, but because it is part of Rust's philosophy that such functionality does not belong in std and should be implemented in separate crates instead.

This does mean that many of those crates don't have the polish and concentrated developer effort behind them that they would if they were in std. I can imagine it is indeed a lot easier to deal with XML in Go no matter what crates you use and hopefully this will improve in the future. I just wanted to emphasize this point about std.

1 Like

To extend a little bit, if Rust has more resources, Rust could make a official team to develop/maintain such crates outside std.

2 Likes

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.