News for hackers. Stuff that matters.
Re:How often does Rust change? by wffurr on Saturday April 11, 2020 @02:22PM (#22843172)
It seems weird to think that Rust is changing too much. It's a young language and has a lot of catching up to do to cover all the use cases it's intended for and bring in all the niceties we expect out of modern multi-paradigm programming languages: procedural, functional, and object-oriented techniques.

C++ is from 1985 and standardized in 1998, and it's still changing at a fast clip: C++11, C++17, Concepts will be a big deal when they happen in C++2?.

Rust wasn't announced until 2010 and didn't ship 1.0 until 2015. It's only had 5 years to bake since 1.0, vs the 22 for C++.

Re:How often does Rust change? by mdasen on Saturday April 11, 2020 @05:12PM (#22844289)
That's certainly reasonable, but I think it seems harder to keep up with when people compare it to languages like Go (first appeared November 2009) and Kotlin (first appeared July 2011). Those languages both seem really easy to keep up with by comparison. Of course, both of those languages are going along much more well trodden paths.

I think the "Rust is changing too much" feeling comes from people really wanting to use Rust because it has a cool new way of managing memory and zero-cost abstractions, but also feeling like it just keeps moving a little too much on them. Languages like Go and Kotlin just aren't moving much on them.

I think that another part of that feeling comes from the fact that Rust has two different pieces: a) the new way of dealing with memory and abstraction; and b) the syntax, sugar, etc. If you're looking for "a", Rust is the only game in town there. You can't just decide that you need the memory lifetimes and zero-cost abstractions, but don't want to deal with the rest of Rust's evolution.

This might be easier to illustrate by contrast. If I want a statically-typed, garbage-collected language, I can choose Java, Kotlin, C#, Scala, Go, TypeScript, etc. I feel like I have a lot of choice. If I want a dynamic language, I can go with Python, Ruby, JS, PHP, etc. If I want a language that doesn't need GC while not having memory leaks...I'm left with Rust. I can't decide that I don't like the other parts of Rust or don't want to deal with Rust's evolution. If Kotlin were evolving quickly and breaking lots of things, I could just say "Kotlin is dumb and I'll just use Java or Scala or C# or Go". I can't say "Rust is dumb and I'll use..."

When there aren't easy replacements, you're wedded to the decisions of the community. The easier the replacements, the less loud your complaints will be about a language. I think that Kotlin was pretty great for Java because it was highly compatible with Java and gave Java breathing room to figure out how it would evolve Java. Kotlin gave frustrated people a path; it gave Java breathing room to figure out its evolution; and it gave Java the opportunity to look at what worked well in Kotlin and figure out how it could apply that in Java.

When we look at Go, there are often complaints because Go offers things unavailable elsewhere: fast compile times and to a certain extent its concurrency support. So if you really want fast compile times, you don't have an alternative.

Rust is probably changing more than languages like Go and Kotlin which are similar aged. There's a good reason for that: Rust's brief is a lot more novel and expansive than those two languages. However, if you're sold on Rust's memory management and zero-cost abstractions, it might be annoying that it feels like more of a moving target than a language like Go or Kotlin - and you have no alternative to fill that void.

Re:How often does Rust change? by ironmagma on Saturday April 11, 2020 @05:15PM (#22844314)
Rust is a baby, it requires love and care. Go is a bartender, it does what you need it to but with little charm.
Re:How often does Rust change? by wffurr on Saturday April 11, 2020 @08:35PM (#22845244)
I sure wish Go moved faster. Took them long enough to get around to generic data types. There's still an awful lot of programming that's just not possible in the language still.

Perhaps that's by design, but it's frustrating.

Re:How often does Rust change? by RMPR on Sunday April 12, 2020 @07:54AM (#22847624)
> If I want a language that doesn't need GC while not having memory leaks...I'm left with Rust.

I never used those languages, in fact I discovered them on previous HN posts, but it seems to me that in this category you can also have Nim and Zig, no?

Re:How often does Rust change? by wffurr on Sunday April 12, 2020 @09:44AM (#22848195)
Those are considered niche compared to Rust or C++. Rust has a large ecosystem around it and at least one large sponsor (Mozilla) and used in production by others like Cloudflare, Yelp, and npm.

I think Nim and Zig are both quite interesting and potentially very productive, but they have a long way to catch up to Rust in terms of community support.

Re:How often does Rust change? by master_korin on Sunday April 12, 2020 @12:13PM (#22849154)
Not being corporate-driven is a feature, not a bug.
Re:How often does Rust change? by wffurr on Monday April 13, 2020 @07:03AM (#22854729)
Corporate sponsorship is just an example of the level of support that exists for Rust. And it's Mozilla I'm talking about here, not your typical corporation.

Certainly other languages were able to become widespread with large communities and library ecosystems without being directly sponsored by a corporation, such as Python or Ruby. I tend to think of those as associated with an individual, Guido or Yukihiro, though I know in Guido van Rossum's case he's worked for Google and Dropbox, though that was after Python was in wide use at those companies.

Whereas with Rust I think "Mozilla" not "Steve Klabnik", because it was corporate-sponsored from the beginning and worked on by a team.

And if you want your favorite language to grow into its potential, you need funding, and corporations have a lot of funding to put into things like potentially productive new languages.

Re:How often does Rust change? by cercatrova on Sunday April 12, 2020 @08:56AM (#22847950)
It's similar to Javascript in a way. If I want to code for the web, I can only use JS. Sure, there are extensions like TypeScript, or even other languages that compile to JS like Elm, but most people are gonna use JS.
Re:How often does Rust change? by masklinn on Saturday April 11, 2020 @03:28PM (#22843588)
> C++ is from 1985 and standardized in 1998, and it's still changing at a fast clip: C++11, C++17, Concepts will be a big deal when they happen in C++2?.

C++ pretty much didn't change between 1998 and 2011 though (2003 was mostly a bugfix and compatibility release). And these days it updates every 3 years (you forgot C++14 though it was a very minor release) which is a much slower pace than Rust's 6 weeks cycle.

Re:How often does Rust change? by ChrisSD on Saturday April 11, 2020 @03:44PM (#22843713)
I don't think the 6 weeks vs. 3 years tells the full story. C++ collects up a whole truck load of changes and waits up to 3 years then dumps all of them in one go. Whereas Rust releases them individually, waiting up to six weeks after they've done baking in the nightly compiler (though they've likely been in development for years before that).

That's not to say Rust is necessarily slower paced than C++ either, just that a raw number on release dates aren't helpful by themselves.

Re:How often does Rust change? by wffurr on Saturday April 11, 2020 @03:40PM (#22843668)
Major C++ releases and Rust Editions are both on three year cycles.
Re:How often does Rust change? by masklinn on Saturday April 11, 2020 @04:09PM (#22843854)
AFAIK rust editions are not on any schedule currently, there's no guarantee that there'll be a Rust 2021 edition.
Re:How often does Rust change? by steveklabnik on Saturday April 11, 2020 @04:29PM (#22843989)
Yes. We have not technically committed to a Rust 2021 yet. We are going to decide this year.
Re:How often does Rust change? by iknowstuff on Saturday April 11, 2020 @03:47PM (#22843733)
Yup. If you read the linked article, you’ll notice the release schedule was addressed by the author.
Re:How often does Rust change? by masklinn on Saturday April 11, 2020 @04:10PM (#22843857)
That an article about Rust changes talk about Rust's schedules has nothing to do with comparisons between C++ and Rust.
Re:How often does Rust change? by kccqzy on Saturday April 11, 2020 @02:53PM (#22843356)
Concepts already happened. In C++20 released earlier this year.